14.03.2025
Как развернуть локальный сайт на WordPress через Docker и работать с ним
WordPress — одна из самых популярных CMS в мире, и разработка или тестирование сайтов на ней часто требует локальной среды. Docker позволяет быстро и удобно развернуть такую среду, избегая сложной настройки серверов вручную. В этой статье я расскажу, как настроить WordPress локально с помощью Docker и объясню, почему это выгодно.
Что нам понадобится
- Docker — контейнеризатор, который нужно установить на ваш компьютер (скачать можно с официального сайта).
- Docker Compose — инструмент для управления несколькими контейнерами (обычно устанавливается вместе с Docker).
- Текстовый редактор (например, VS Code) для создания конфигурационного файла.
Шаг 1: Установите Docker
Если у вас еще нет Docker, скачайте и установите его:
- Для Windows/Mac: используйте Docker Desktop.
- Для Linux: следуйте инструкциям для вашей дистрибуции.
После установки проверьте, что всё работает, выполнив в терминале:
docker --version
docker-compose --version
Шаг 2: Создайте проект
- Создайте папку для вашего проекта, например,
wordpress-local
. - Перейдите в эту папку через терминал:
cd wordpress-local
Шаг 3: Настройте Docker Compose
Создайте файл docker-compose.yml
в папке проекта и добавьте следующий код:
version: '3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8080:80"
restart: always
volumes:
- wordpress_data:/var/www/html
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data:
wordpress_data:
Этот файл описывает два сервиса:
- MySQL (база данных для WordPress).
- WordPress (сам сайт).
Шаг 4: Запустите контейнеры
В терминале в папке с docker-compose.yml
выполните:
docker-compose up -d
- Флаг
-d
запускает контейнеры в фоновом режиме. - Docker скачает образы MySQL и WordPress, настроит их и запустит.
Шаг 5: Проверьте работу сайта
Откройте браузер и перейдите по адресу http://localhost:8080
. Вы увидите стандартную страницу установки WordPress. Следуйте инструкциям:
- Выберите язык.
- Введите данные базы данных (они уже настроены в
docker-compose.yml
):
- Имя базы:
wordpress
- Имя пользователя:
wordpress
- Пароль:
wordpress
- Хост:
db
- Завершите установку, создав администратора сайта.
Шаг 6: Работайте с сайтом
Теперь у вас есть полностью рабочий WordPress. Вы можете:
- Устанавливать темы и плагины через админ-панель (
http://localhost:8080/wp-admin
). - Редактировать файлы сайта в папке
wordpress_data
, которая автоматически создаётся в вашей директории проекта.
Как остановить и удалить
- Остановить контейнеры:
docker-compose stop
- Удалить контейнеры и данные (если нужно начать с нуля):
docker-compose down -v
Почему это удобно?
- Простота настройки: Не нужно устанавливать и настраивать Apache, PHP, MySQL вручную — Docker делает всё за вас.
- Изоляция: Каждый проект работает в своём контейнере, избегая конфликтов версий или настроек.
- Кроссплатформенность: Один и тот же
docker-compose.yml
работает на Windows, Mac и Linux. - Быстрое развертывание: Запуск занимает минуты, а не часы.
- Лёгкость масштабирования: Можно быстро добавить дополнительные сервисы (например, phpMyAdmin) в
docker-compose.yml
. - Повторяемость: Вы можете делиться конфигурацией с коллегами или переносить её на другой компьютер без изменений.
Дополнительно: phpMyAdmin (опционально)
Если хотите управлять базой данных через интерфейс, добавьте в docker-compose.yml
:
phpmyadmin:
image: phpmyadmin/phpmyadmin
ports:
- "8081:80"
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: somewordpress
Запустите docker-compose up -d
снова, и phpMyAdmin будет доступен по адресу http://localhost:8081
.
Теперь у вас есть локальная среда WordPress, готовая для разработки, тестирования или обучения. Docker делает процесс удобным и современным, экономя время и нервы. Попробуйте — и убедитесь сами!