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

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

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

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

  • Операционная система: Ubuntu (как указано в файле задач ubuntu.yml).

  • Привилегии: Требуется доступ root (суперпользователя) для установки Docker, управления системными службами и конфигурирования сетевых интерфейсов.

  • Сетевой доступ: Сервер должен иметь доступ в Интернет для клонирования репозиториев и загрузки образов Docker.

  • Порты: Порт 443 настроен как внешний порт для трафика HTTPS.

  • Конфигурация домена: Требуется действительное доменное имя, соответствующее шаблону wp<server_id>.hostkey.in.

FQDN приложения

Полное доменное имя (FQDN) для доступа к установке WordPress следует конкретной структуре, основанной на идентификаторе сервера. Формат:

wp<Server ID>.hostkey.in:443

Где <Server ID> заменяется на фактический уникальный идентификатор экземпляра сервера.

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

Приложение развертывается с использованием среды на базе Docker, клонированной из специфичного репозитория. Основные каталоги и файлы включают:

  • Расположение репозитория: /root/ols-docker-env

    • Содержит конфигурацию Docker Compose и скрипты развертывания.
  • Каталог скриптов: /root/ols-docker-env/bin/

    • domain.sh: Скрипт для добавления виртуальных хостов.

    • database.sh: Скрипт для создания экземпляров базы данных.

    • appinstall.sh: Скрипт для установки приложения WordPress.

    • acme.sh: Скрипт для управления SSL-сертификатами.

  • Хранение данных: Данные приложения, логи и файлы конфигурации управляются в рамках структуры тома Docker, созданного командой docker compose в каталоге /root/ols-docker-env.

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

Развертывание выполняется через настройку Docker Compose, использующую среду Docker OpenLiteSpeed. Процесс включает следующие шаги:

  1. Обновление пакетов системы: Убедитесь, что операционная система имеет последние доступные пакеты.

  2. Установка Docker: Docker устанавливается для управления контейнеризированной средой.

  3. Клонирование репозитория: Среда Docker OpenLiteSpeed клонируется в /root/ols-docker-env.

  4. Запуск контейнеров: Команда docker compose up -d запускает необходимые контейнеры (OpenLiteSpeed, MySQL и др.).

  5. Добавление виртуального хоста: Домен добавляется в конфигурацию OpenLiteSpeed с помощью bin/domain.sh.

  6. Создание базы данных: Создается база данных с именем wordpress с пользователем admin.

  7. Установка WordPress: Приложение развертывается в контейнерной среде с помощью bin/appinstall.sh.

  8. Установка SSL-сертификата: Клиент ACME устанавливается, и для домена выдается сертификат.

Контейнеры Docker и их развертывание

Приложение работает внутри контейнеров Docker, оркестрируемых Docker Compose. Развертывание зависит от файла docker-compose.yml, расположенного в каталоге /root/ols-docker-env.

Для управления контейнерами используется следующая команда:

docker compose up -d

Команда должна быть выполнена из каталога /root/ols-docker-env. Контейнеры настроены на запуск в режиме отсоединения (-d) для автоматического запуска и работы в фоновом режиме.

Прокси-серверы и конфигурация SSL

В развертывании используется OpenLiteSpeed в качестве веб-сервера, который выступает в роли прокси и напрямую предоставляет контент. Шифрование SSL/TLS осуществляется через протокол ACME для обеспечения защищенных соединений.

  • Управление SSL: Скрипт acme.sh используется для установки клиента ACME и выдачи сертификатов для домена wp<server_id>.hostkey.in.

  • Домен: Сертификат выдается для конкретного домена, сгенерированного переменными prefix и server_id.

  • Протокол: Трафик обслуживается через HTTPS на внешнем порту.

Базы данных

Приложение WordPress настроено на использование базы данных MySQL. Параметры подключения определены следующим образом:

Параметр Значение
Имя базы данных wordpress
Пользователь базы данных admin
Пароль Наследуется из пароля SSH
Метод подключения Внутренняя коммуникация в сети Docker

База данных создается с помощью скрипта database.sh со следующей структурой команды: --domain wp<server_id>.hostkey.in --user admin --password <password> --database wordpress_db

Расположение файлов конфигурации и данных

Весь процесс управления конфигурацией и сохранения данных обрабатывается внутри среды Docker в каталоге /root/ols-docker-env.

  • Конфигурация: Управляется через определения Docker Compose и скрипты в подкаталоге bin/.

  • Корневая директория веб-сайта: Корневая директория документов для установки WordPress определяется внутренними настройками контейнера OpenLiteSpeed.

  • Сертификаты: SSL-сертификаты, выданные ACME, хранятся в структуре тома контейнера.

Доступные порты для подключения

Приложение открывает конкретные порты для внешнего и внутреннего взаимодействия:

Порт Протокол Описание
443 TCP Внешний доступ HTTPS для сайта WordPress.
80 TCP Обычно используется для перенаправления HTTP и проверки валидации ACME (имплицируется использованием ACME).

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

Управление службами для приложения на базе Docker выполняется с помощью команд Docker Compose, запущенных из каталога /root/ols-docker-env.

  • Запуск служб:

    cd /root/ols-docker-env
    docker compose up -d
    

  • Остановка служб:

    docker compose down
    

  • Перезапуск служб:

    docker compose restart
    

Примечание: Обновление приложения обычно включает загрузку последних образов и перезапуск контейнеров:

docker compose pull
docker compose up -d

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×