Еще один вариант среды для разработки WordPress (docker, wp-cli)
Есть официальные образы для развертывания WordPress и использования wp-cli. Но при их совместном использовании мне приходилось расшаривать всю папку WordPress и хотелось, чтобы было больше возможностей для кастомизации установки.
Очень хотелось после запуска контейнера видеть в браузере не приглашение к выбору языка установки, а готовый сайт.
Эта статья предлагает один из способов развертывания сайтов на WordPress.
Установка
git clone https://github.com/eustatos/wordpress-docker-dev-env.git
или, если предпочитаете ssh
:
git clone git@github.com:eustatos/wordpress-docker-dev-env.git
Затем:
cd wordpress-docker-dev-env
docker-compose up -d
docker-compose exec -T wp-cli sh < install.sh
На этом установка окончена. Откройте localhost:8080
в предпочитаемом браузере.
Доступ к админ панели localhost:8080/wp-admin
.
Логин пользователя — admin
Пароль пользователя — 123
Изменить эти и другие переменные окружения и установки можно в файлах site.env
и .env
.
В папке проекта появляется папка wp-content
, где можно создавать и\или изменять темы и плагины
Если есть проблемы с правами на файлы в папке wp-content
:
sudo usermod -a -G www-data $USER
Кастомизация сборки
Вы можете управлять сборкой, как удобно. Например, если не нужно создавать темы и\или плагины по-умолчанию — просто внесите изменения в install.sh
.
#!/usr/bin/env bash
wp core download --force --allow-root
wp config create \
--dbhost=$WORDPRESS_DB_HOST \
--dbname=$WORDPRESS_DB_NAME \
--dbuser=$WORDPRESS_DB_USER \
--dbpass=$WORDPRESS_DB_PASSWORD \
--allow-root
wp core install \
--title=$TITLE \
--url=$URL \
--admin_user=$ADMIN_USER \
--admin_password=$ADMIN_PASSWORD \
--admin_email=$ADMIN_EMAIL \
# add for skip creation default themes
--skip-themes
# add for skip creation default plugins
--skip-plugins
--allow-root
Полее подробно о возможностях wp core install
можно узнать
здесь
Пример создания темы
Например, для создания темы основанной на underscores
выполните следующую команду
docker-compose exec -T wp-cli wp scaffold _s \
sample-theme \
--theme_name="Sample Theme" \
--author="John Doe"
Эта команда создаст папку sample-theme
в папкеwp-content
с файлами темы и вы можете тут же начать ее модифицировать.
В завершении, короткое видео для наглядности