Перейти к содержанию

Обзор развертывания CapRover на сервере

Предпосылки и предварительные требования

Для успешного развертывания приложения необходимо выполнить следующие условия:

  • Операционная система: Debian или совместимая дистрибуция Linux.
  • Наличие прав суперпользователя (root) или доступа через sudo для выполнения команд установки.
  • Доступ к интернету для обновления пакетов и загрузки образов контейнеров.
  • Открытые порты 80, 443 и 3000 на брандмауэре сервера для приема входящих соединений.
  • Наличие настроенной DNS-зоны для создания записи типа A с подстановочным знаком (*).

Процесс установки приложения

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

  1. Обновление кэша пакетов и установка всех доступных обновлений системы с помощью менеджера пакетов apt.
  2. Установка платформы контейнеризации Docker на сервер.
  3. Развертывание приложения CapRover версии, указанной в образе caprover/caprover, через запуск контейнера Docker.

Команда запуска контейнера включает следующие параметры: - Перенаправление портов 80, 443 и 3000 с хоста на контейнер. - Переменная окружения ACCEPTED_TERMS установлена в значение true для автоматического принятия условий использования. - Монтирование сокета Docker /var/run/docker.sock внутрь контейнера для управления другими контейнерами. - Монтирование директории /captain на сервере в точку монтирования /captain внутри контейнера для хранения данных.

Контейнеры Docker и их запуск

Приложение работает в виде одного основного контейнера, который управляет остальной инфраструктурой. Запуск осуществляется следующей командой:

docker run -p 80:80 -p 443:443 -p 3000:3000 -e ACCEPTED_TERMS=true -v /var/run/docker.sock:/var/run/docker.sock -v /captain:/captain caprover/caprover

Параметры запуска: - -p 80:80: Открытие HTTP-порта. - -p 443:443: Открытие HTTPS-порта. - -p 3000:3000: Открытие порта для веб-интерфейса управления. - -e ACCEPTED_TERMS=true: Принятие условий использования. - -v /var/run/docker.sock:/var/run/docker.sock: Предоставление доступа к демонстрационному процессу Docker. - -v /captain:/captain: Сохранение данных приложения в директории /captain.

Структура файлов и каталогов

Данные приложения и конфигурация хранятся в следующих местах:

  • /captain: Директория на хосте, где сохраняются все данные развертывания, включая конфигурации приложений и базы данных.
  • /var/run/docker.sock: Сокет Docker, необходимый для работы приложения с контейнерами.

Права доступа и безопасность

Для корректной работы приложения требуются следующие настройки безопасности:

  • Брандмауэр должен разрешать входящий трафик на порты 80, 443 и 3000.
  • Контейнер запускается с привилегиями, позволяющими управлять Docker-демоном через монтирование сокета.
  • Доступ к веб-интерфейсу осуществляется через доменное имя, для которого создается запись DNS типа A с подстановочным знаком.

Базы данных

База данных для приложения CapRover хранится внутри контейнера и синхронизируется с директорией /captain на хосте. Конфигурация подключения к базе данных управляется автоматически через переменные окружения и файлы конфигурации внутри контейнера.

Запуск, остановка и обновление

Управление контейнером осуществляется стандартными командами Docker:

  • Запуск контейнера выполняется командой, указанной в разделе "Контейнеры Docker и их запуск".
  • Остановка контейнера:
    docker stop <имя_контейнера>
    
  • Перезапуск контейнера:
    docker restart <имя_контейнера>
    
  • Обновление образа приложения:
    docker pull caprover/caprover
    
    После обновления образа необходимо остановить текущий контейнер и запустить новый с теми же параметрами.
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×