Установка веб-приложения с помощью Cloudron в Ubuntu 18.04

Cloudron – это платформа, которая упрощает установку приложений на сервер и управление ними (среди них WordPress, Rocket.Chat, Nextcloud, GitLab, OpenVPN и многие другие). Основное преимущество использования Cloudron заключается в том, что он выполняет сквозное развертывание приложений. Он автоматизирует такие задачи, как подготовка баз данных, настройка DNS, управление сертификатами, централизованное управление пользователями и автоматическое резервное копирование.

Приложения на Cloudron также автоматически обновляются. Команда Cloudron отслеживает релизы приложений и публикует обновления для них. Пользовательский опыт установки и обновления приложений на сервере очень похож на то, как приложения устанавливаются и обновляются на вашем смартфоне: нужно просто кликнуть на приложение, чтобы установить и начать использовать его без системного администрирования.

В этом мануале вы научитесь устанавливать Cloudron на своем сервере, а затем для практики развернете сайт WordPress, чтобы узнать, как Cloudron выполняет полную автоматизацию развертывания. В конце мы также настроим удаленное резервное копирование Cloudron, чтобы подготовить экземпляр Cloudron к производству.

Требования

  • Сервер Ubuntu 18.04, настроенный по этому мануалу.
  • Доменное имя для приложения. Мы будем использовать условный домен example.com. При этом Cloudron установит свою панель управления по домену my.example.com, а приложения будут установлены по указанным субдоменам, например, git.example.com, chat.example.com и т.п.
  • DNS API ключи, которые Cloudron будет использовать для автоматизации DNS. Cloudron поддерживает многих провайдеров. Если ваш DNS-провайдер не поддерживается, вы можете использовать подстановочный знак или установить провайдера вручную.
  • Удаленное хранилище объектов с API-ключами (access и secret).

1: Установка Cloudron

Для начала нужно установить Cloudron на свой сервер, используя официальный скрипт установки.

Прежде всего, загрузите скрипт установки как пользователь sudo, выполнив следующую команду:

wget https://cloudron.io/cloudron-setup

Затем, чтобы сделать скрипт установки исполняемым, выполните следующую команду:

chmod +x ./cloudron-setup

Наконец, чтобы установить Cloudron, выполните команду:

sudo ./cloudron-setup --provider your-provider

Установка займет около 10 минут. После завершения установки скрипт запросит у вас разрешение на перезагрузку сервера, выберите Y, чтобы продолжить:

##############################################
Cloudron Setup (latest)
##############################################
Follow setup logs in a second terminal with:
$ tail -f /var/log/cloudron-setup.log
Join us at https://forum.cloudron.io for any questions.
=> Installing software-properties-common
=> Ensure required apt sources
=> Updating apt and installing script dependencies
=> Checking version
=> Downloading version 3.5.0 ...
=> Installing base dependencies and downloading docker images (this takes some time) ...
=> Installing version 3.5.0 (this takes some time) ...
=> Waiting for cloudron to be ready (this takes some time) ....
Visit https://<IP> and accept the self-signed certificate to finish setup.
The server has to be rebooted to apply all the settings. Reboot now ? [Y/n] Y

Вы установили Cloudron на свой сервер, теперь вы можете настроить домен и учетную запись администратора.

2: Настройка Cloudron

На этом этапе нужно сконфигурировать основной домен Cloudron с помощью мастера установки и настроить свою учетную запись Cloudron для доступа. Вы также предоставите Cloudron свои ключи API для защиты домена с помощью Let’s Encrypt.

После перезагрузки сервера перейдите по адресу https://your-server-ip в браузере и примите самоподписанный сертификат.

В Chrome вы можете принять такой сертификат, нажав Advanced, а затем Proceed to your-server-ip (unsafe). В Firefox нажмите Advanced, затем Add Exception и, наконец, Confirm Security Exception.

На этом этапе появится мастер установки Cloudron. Укажите доменное имя и выберите, где размещен ваш домен. Cloudron поддерживает многих DNS провайдеров, таких как Cloudflare, Gandi и GoDaddy.

Укажите свой токен API и нажмите Next.

Cloudron будет использовать эти ключи для настройки DNS и получения сертификатов Let’s Encrypt для вашего домена. Cloudron будет перенаправлять на https://my.example.com. В адресной строке браузера будет отображаться зеленый замочек, который указывает на то, что подключение к вашей установке Cloudron теперь защищено. Завершите настройку, указав имя пользователя и пароль. Форма, которую нужно заполнить, будет выглядеть так:

Full name: example_name
Email: email@example.com
Username: example_user
Password:

Когда вы настроите учетную запись администратора, вы увидите экран No apps installed yet!. Вы завершили настройку своей учетной записи Cloudron. Далее вы можете решить, какие приложения устанавливать.

3: Установка приложений

Теперь можно начать установку приложений.

Когда вы нажмете на App Store в интерфейсе, Cloudron предложит вам создать аккаунт cloudron.io. Вы сможете использовать эту учетную запись для управления подпиской и выплатами. Cloudron можно бесплатно использовать для поддержки двух приложений.

После регистрации вы можете установить более 50 приложений одним кликом мыши. При нажатии на приложение появится диалоговое окно установки. Например, вы можете кликнуть на значок WordPress и использовать субдомен blog. После того как вы нажмете Install, Cloudron автоматически настроит все необходимое для каждого приложения, например DNS, базы данных, сертификаты и т. д.

WordPress
Location: blog
User management:
○ Leave user management to the app
Allow all users from this Cloudron
○ Only allow the following users and groups

При установке приложения вы можете указать, должно ли оно интегрироваться с централизованным управлением пользователями Cloudron. Если вы решите использовать это управление, вы можете войти в приложение под своим именем пользователя Cloudron. Затем вы можете добавить в Cloudron больше пользователей и групп и контролировать их доступ к приложению. Если вы решите вместо этого оставить управление пользователями самому приложению, в нем будет предварительно создана учетная запись администратора, а его учетные данные отобразятся после установки. Вы можете добавить больше пользователей внутри самого приложения. Обратите внимание, что приложения в Cloudron всегда доступны извне – настройка контроля доступа определяет только способ проверки подлинности при входе.

После установки вы можете получить доступ к приложению по адресу https://blog.example.com.

Итак, вы установили приложение на свой экземпляр Cloudron; вы можете повторить этот процесс для установки любого из доступных приложений. После этого нужно настроить резервное копирование, чтобы защитить ваши данные.

4: Настройка резервного копирования

Перед использованием Cloudron в производственной среде необходимо настроить периодическое сохранение резервных копий в удаленном хранилище. Cloudron создает индивидуальные резервные копии для каждого приложения. Основным преимуществом этого подхода является то, что приложения можно откатить, клонировать и даже перенести на новую установку Cloudron.

Cloudron может сохранять копии в любом провайдере, который поддерживает S3 API, или в любом внешнем томе.

После настройки своего удаленного хранилища объектов вы можете использовать соответствующие ключи API. Настройте резервное копирование Cloudron, перейдя во вкладку Backups и нажав Configure. Вы увидите такую форму, которую нужно заполнить:

Configure Backup Storage
Cloudron makes a complete backup of your system every day.
Storage provider: my-provider
Bucket name: example-com
Prefix: backups
Region: my-region
Access key id: my-access-key
Secret key id: my-secret-key
Storage format: Tarball (zipped)

Cloudron будет периодически обновлять резервные копии. Если ваш сервер вышел из строя или вы хотите переместить его в другой регион, вы можете создать новый сервер, установить Cloudron и восстановить сервер из резервной копии до точного его состояния.

Итак, вы подключили установку Cloudron к вашему удаленному хранилищу и настроили резервное копирование. Далее мы рассмотрим некоторые другие функции, доступные в Cloudron.

5: Изучение других функций (опционально)

Cloudron предоставляет централизованное управление пользователями, которое позволяет вам приглашать членов команды и настраивать контроль доступа для каждого пользователя.

Чтобы добавить нового участника, перейдите в раздел Users и нажмите New User. Cloudron отправит новому пользователю электронное письмо со ссылкой для регистрации.

Новый пользователь может зарегистрироваться и начать использовать любые приложения, к которым вы предоставили ему доступ. В нашем примере с WordPress новый пользователь сможет сразу получить к нему доступ, поскольку вы установили приложение со значением Allow all users on this Cloudron для параметра User Management.

Другая распространенная задача при управлении экземпляром Cloudron – установка приложений по другому домену. Чтобы добавить домен, перейдите в Domains и нажмите Add Domain. После завершения вы можете установить приложения по новому домену.

Безопасность всегда имеет первостепенное значение, и Cloudron обеспечивает безопасность «под ключ», которая включает отслеживание деталей вашей установки Cloudron. В представлении Activity вы можете посмотреть все события, зарегистрированные для вашего Cloudron, а также все изменения конфигурации.

Заключение

В этом мануале вы установили Cloudron на свой сервер. Затем вы установили приложение WordPress. Благодаря Cloudron  у вас не было необходимости вручную настраивать базы данных, DNS, сертификаты и так далее. Эта установка WordPress будет автоматически обновляться при выходе новых релизов. Вы также настроили периодическое сохранение резервных копий в удаленном хранилище и ознакомились с другими функциями, которые могут обеспечить дополнительную защиту Cloudron.

Установка приложений на сервер вручную – это сложный и трудоемкий процесс, в ходе которого могут возникнуть ошибки. Современные веб-приложения используют различные базы данных, платформы и менеджеры пакетов, которые могут усложнить установку. Кроме того, защита и резервное копирование ваших приложений всегда требуют отдельной настройки. Устанавливая приложения вручную, необходимо тщательно отслеживать релизы и затем внедрять обновления, чтобы поддерживать их актуальность. Cloudron – это средство, которое помогает вам легко развертывать и поддерживать приложения на вашем сервере.

Чтобы узнать больше о функциях Cloudron, вы можете обратиться к документации.

Если у вас есть вопросы и вы хотите их обсудить, посетите форум.

Tags: , ,