Еще один вариант среды для разработки 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 с файлами темы и вы можете тут же начать ее модифицировать.

В завершении, короткое видео для наглядности:

Специально для сайта ITWORLD.UZ. Новость взята с сайта Хабр