Как установить WordPress с Docker на Ubuntu 15.04
На этой странице
- Шаг 1. Установите Docker
- Шаг 2. Настройка контейнера MariaDB
- Шаг 3. Настройка контейнера Wordpress
- Шаг 4. Установите и настройте Nginx в качестве обратного прокси-сервера
- Шаг 5. Установка WordPress
- Справочник
В этом руководстве мы установим WordPress, используя несколько контейнеров докеров. Сам Wordpress в одном контейнере и база данных MariaDB в другом контейнере. Затем мы установим Nginx на хост-компьютере в качестве обратного прокси-сервера для контейнера WordPress.
Docker — это проект с открытым исходным кодом, облегчающий разработчикам и системным администраторам создание, развертывание и запуск распределенных приложений внутри контейнера Docker. Docker — это виртуализация на уровне операционной системы, вы можете создать системную изоляцию для своего приложения с помощью docker для приложения, которое работает внутри контейнера. Вы можете создать сотни док-контейнеров внутри вашего сервера, их количество зависит от аппаратного обеспечения вашей машины.
Предпосылка
- Убунту 15.04 — x86_64
- Привилегии root
- Знание Docker
Шаг 1 — Установите Докер
На этом этапе мы обновим репозиторий Ubuntu, а затем установим последнюю версию docker.io.
Станьте пользователем root для следующих шагов:
sudo -s
Обновите репозиторий Ubuntu:
apt-get update
Теперь установите пакеты Docker с помощью команды apt ниже:
apt-get install docker.io
Когда установка завершится, запустите docker и добавьте его для запуска во время загрузки системы с помощью команды systemctl:
systemctl start docker
systemctl enable docker
Затем проверьте версию Docker с помощью этой команды docker:
docker version
docker run hello-world
Установка докера завершена.
Шаг 2. Настройте контейнер MariaDB.
На этом этапе мы загрузим новые образы MariaDB из реестра докеров и создадим новый контейнер на основе этого образа. Мы настроим новую базу данных и пользователя для установки WordPress.
Загрузите образ Docker MariaDB в систему с помощью команды Docker pull:
docker pull mariadb
Теперь вы можете увидеть новый образ docker MariaDB с помощью следующей команды:
docker images
Затем создайте новый контейнер из образа MariaDB для установки WordPress. Перед созданием нового контейнера создайте новый каталог для данных WordPress, каталога базы данных и каталога кода WordPress.
mkdir ~/wordpress
mkdir -p ~/wordpress/database
mkdir -p ~/wordpress/html
Теперь создайте новый контейнер MariaDB с именем wordpressdb с помощью следующей команды:
docker run -e MYSQL_ROOT_PASSWORD=aqwe123 -e MYSQL_USER=wpuser -e -e MYSQL_DATABASE=wordpress_db -v /root/wordpress/database:/var/lib/mysql --name wordpressdb -d mariadb
Если ошибки нет, вы можете увидеть результаты ниже:
Объяснение параметра:
- MYSQL_ROOT_PASSWORD=настроить пароль для пользователя root MySQL.
- MYSQL_USER=создать нового пользователя MySQL wpuser для базы данных WordPress.
- MYSQL_PASSWORD=установите пароль [email для пользователя wpuser.
- MYSQL_DATABASE=создать новую базу данных для установки WordPress с именем wordpress_db.
- -v /root/wordpress/database:/varlib/mysql=связанный каталог базы данных с каталогом mysql /var/lib/mysql в контейнере для обеспечения сохранения данных.
Контейнер MariaDBriadb создан, теперь проверьте нового пользователя и базу данных для установки WordPress, чтобы убедиться, что нет ошибки с командой сверху.
На хост-компьютере проверьте IP-адрес контейнера wordpressdb с помощью команды docker ниже:
docker inspect -f '{{ .NetworkSettings.IPAddress }}' wordpressdb
Затем подключитесь к контейнеру wordpressdb с помощью команды mysql из хост-системы:
mysql -u wpuser -h 172.17.0.2 -p
TYPE PASSWORD:
Проверить новую базу данных wordpress_db:
show databases;
Все результаты:
Новый контейнер Docker, пользователь MySQL и база данных MySQL для WordPress успешно созданы.
Шаг 3. Настройте контейнер Wordpress.
После создания контейнера базы данных загрузите последний образ докера WordPress с помощью команды docker pull:
docker pull wordpress:latest
Когда загрузка завершится, создайте новый контейнер из образов с именем wpcontainer.
docker run -e WORDPRESS_DB_USER=wpuser -e -e WORDPRESS_DB_NAME=wordpress_db -p 8081:80 -v /root/wordpress/html:/var/www/html --link wordpressdb:mysql --name wpcontainer -d wordpress
Вы можете получить результат, как показано ниже, или проверить, создан ли новый контейнер с именем wpcontainer.
Параметры:
- WORDPRESS_DB_USER=определить пользователя базы данных wpuser для базы данных wordpress.
- WORDPRESS_DB_PASSWORD=пароль [электронная почта защищена] для пользователя базы данных wpuser.
- WORDPRESS_DB_NAME=имя базы данных wordpress_db, созданной на шаге 2.
- -p 8081:80=сопоставление порта 80 контейнера с портом 8081 хоста.
- -v /root/wordpress/html:/var/www/html=связывание корневого веб-каталога /var/www/html в контейнере с локальным каталогом хоста wordpress/html.
- --link wordpressdb:mysql=связывание контейнера mariadb wordpressdb с новым контейнером wordpress wpcontainer.
Чтобы увидеть работающий контейнер WordPress, вы можете проверить его с помощью команды curl на IP-адресе хоста и порте 8081.
curl -I 192.168.43.99:8081
Вы увидите результаты:
- Веб-сервером является Apache, работающий на Debian.
- В контейнере работает PHP 5.6.
- Вы видите перенаправление на установку WordPress.
Шаг 4. Установите и настройте Nginx в качестве обратного прокси.
На этом этапе мы установим веб-сервер Nginx в хост-системе. Мы настроим Nginx в качестве обратного прокси-сервера для контейнера Docker wpcontainer на порту 8081.
Установите Nginx с помощью команды apt в хост-системе:
apt-get install nginx
Затем перейдите в каталог Nginx и создайте новую конфигурацию виртуального хоста для контейнера WordPress.
cd /etc/nginx/sites-available/
vim wordpress
Вставьте конфигурацию виртуального хоста ниже:
server {
listen 80;
server_name wordpress-docker.co www.wordpress-docker.co;
location / {
proxy_pass http://localhost:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Сохраните файл и выйдите.
Теперь активируйте новый виртуальный хост WordPress и удалите конфигурацию виртуального хоста по умолчанию.
ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-available/default
rm -f /etc/nginx/sites-enabled/default
Перезапустите веб-сервер Nginx:
systemctl restart nginx
Шаг 5 — Установка WordPress
Откройте веб-браузер и посетите доменное имя в конфигурации nginx www.wordpress-docker.co, и вы будете перенаправлены на установку WordPress.
Введите название своего сайта, имя пользователя и пароль администратора, затем нажмите «Установить WordPress».
Теперь нажмите «Вход в Wordpress» и введите имя пользователя и пароль, которые вы выбрали выше, вы увидите панель инструментов WordPress.
Или вы можете увидеть домашнюю страницу WordPress ниже:
Установка WordPress с контейнером MariaDB и контейнером WordPress прошла успешно.
Ссылка
- https://linux-console.net/tutorial/docker-installation-and-usage-on-ubuntu-15.04/