WordPress — это популярная CMS для создания сайтов и блогов. В Kubernetes она разворачивается полностью автоматически: приложение, база данных, хранилище данных и сетевые настройки создаются аддоном.
Установка
Перед установкой WordPress убедитесь, что установлены:
- CSI-driver — обязательный компонент, обеспечивает работу сетевых дисков для WordPress и MariaDB.
- Nginx Ingress — необходим для настройки доступа к сайту по доменному имени.
- CSI S3 — если вы хотите хранить файлы WordPress в S3-бакете.
Для установки откройте раздел «Дополнения» в панели управления кластера и выберите «WordPress».

После выбора дополнения откроется YAML-конфигурация. Для установки достаточно:
- указать
wordpressUsernameиwordpressPassword; - включить
ingress.enabled: true; - указать домен в
ingress.hostname.
В этом случае будут развернуты:
- WordPress;
- база данных MariaDB;
- два сетевых диска для хранения данных;
- LoadBalancer;
- объект Ingress;
- Kubernetes Secrets.
Настройка параметров
Основные настройки
Ключевые настройки WordPress собраны в одном блоке:
Здесь указываются:
- логин и пароль администратора;
- адрес электронной почты;
- имя сайта;
- схема доступа (
http/https).
Остальные параметры относятся к расширенной настройке CMS (SMTP, переменные окружения). Их можно оставить без изменений.
Сетевые настройки
Балансировщик нагрузки
По умолчанию создается LoadBalancer:
Он получает внешний IP-адрес, через который доступен сайт.
Ingress
Дополнительно можно настроить доступ по доменному имени, указав его в настройках Ingress-контроллера:
Хранилище данных
Создаются два тома (PVC):
PVC для WordPress:
PVC для MariaDB:
Оба тома создаются с классом nvme.network-drives.csi.timeweb.cloud. Вы можете изменить класс хранения, указав другой в параметре global.defaultStorageClass или задав storageClass вручную в соответствующих блоках.
После установки сетевые диски появятся в панели управления, в разделе «Сетевые диски».
Постоянные хранилища нужны, чтобы данные сохранялись при пересоздании подов.
После установки
Дождитесь завершения создания балансировщика и создайте A-запись для домена, указав IP-адрес балансировщика.
Проверьте состояние подов:
Вы увидите два пода — в них запущены WordPress и база данных:
Проверьте сервисы:
Пример вывода:
Поле EXTERNAL-IP указывает на IP-адрес балансировщика, через который доступно приложение.