Могу ли я использовать docker-compose
для создания одношаговой установки для полностью установленного приложения PHP?Так как это довольно расплывчатые вопросы.Я буду использовать WordPress в качестве примера.
Если я посмотрю на официальные репозитории WordPress Docker , я вижу, что уже есть супер-полезный yml
файл для docker-composer
version: '3.1'
services:
wordpress:
image: wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: exampleuser
WORDPRESS_DB_PASSWORD: examplepass
WORDPRESS_DB_NAME: exampledb
db:
image: mysql:5.7
restart: always
environment:
MYSQL_DATABASE: exampledb
MYSQL_USER: exampleuser
MYSQL_PASSWORD: examplepass
MYSQL_RANDOM_ROOT_PASSWORD: '1'
Это здорово, и у меня уже есть работающий внешний сервер приложений с уже установленным WordPress.Он также получает сервер базы данных.Он настраивает все, чтобы общаться друг с другом.Это все замечательно.
Что меня не устраивает, так это полностью установленный WordPress.Как и во многих PHP-приложениях, для полной установки необходимо задать несколько дополнительных полей конфигурации, и также несколько дополнительных полей базы данных.
Это означает, что я могуне устанавливайте приложение полностью, пока оба контейнера wordpress
и db
не будут полностью открыты.Я думал о том, чтобы найти обходной путь, когда у меня есть CMD
или ENTRYPOINT
, ожидающие установления соединения с БД, но базовый файл (ы) WordPress Docker уже использует ENTRYPOINT
и CMD
, так что это не так.опция.(или это?)
Есть ли элегантный способ сделать то, что я хочу?Или я застрял, говоря своим пользователям, что нужно создать docker, а затем запустить вторую команду, чтобы завершить установку?