ГлавнаяОперационные системыLinuxКак настроить WordPress с помощью Docker в Ubuntu

Как настроить WordPress с помощью Docker в Ubuntu

Запуск WordPress внутри Docker

система управления контентом (CMS). Более 40% Интернета работает на WordPress. Docker — это система контейнеризации, используемая для запуска вашего программного обеспечения в изолированной среде. Концепция контейнеризации не нова в мире разработки программного обеспечения. Но Docker делает его очень удобным для разработчиков.

В этой статье мы покажем вам, как установить сайт WordPress в контейнер Docker.

Почему Docker?

Почему Docker, спросите вы?

Ответ — простота. В Docker ваше приложение помещается в один образ. Для его запуска не нужно выполнять сложную установку и настройку.

Почему Docker?

p>Не говоря уже о том, что вам также будет быстрее и проще выполнить миграцию/обновление на другой сервер. Допустим, ваш WordPress становится очень популярным, и вам нужно обновить существующий сервер? С Docker это легко сделать, поскольку все уже помещено в контейнер. Если вы разрабатываете что-то с помощью Docker, то после развертывания оно работает везде.

Читайте также: Как скопировать/переместить контейнер Docker на другой хост

Установка Docker

В этой статье мы собираемся установить движок Docker на сервер Ubuntu.

Перед установкой чего-либо, если в вашей системе установлена ​​более старая версия Docker, удалите ее. Запустите эту команду в своем терминале, чтобы удалить все старые версии Docker.

sudo apt autoremove docker docker-engine docker.io containerd runc

Теперь приступим к установке:

  1. Обновите локальные индексы пакетов, запустив apt-get update, и установите зависимости для механизма Docker.
sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release
  1. Добавить официальный ключ GPG Docker.
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubu

Установка Docker

n>| sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  1. Настройте репозиторий.
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. Установите последнюю версию движка Docker.
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
  1. Проверьте установку Docker, запустив образ hello world.
sudo docker run hello-world

Если этот образ Docker hello-world запускается без ошибок, поздравляем. Вы успешно установили Docker на свой компьютер с Ubuntu Linux.

Читайте также: Как установить Docker в Linux

Установка Docker Desktop

Если вы являетесь пользователем Linux на настольном компьютере и хотите установить Docker для целей разработки, то рабочий стол Docker должен быть предпочтительным кандидатом по сравнению с движком Docker. Docker Desktop предоставляет унифицированный интерфейс и независимый от платформы способ создания, запуска и отправки образов Docker.

Докер Рабочий стол

Рабочий стол Docker в Linux работает внутри виртуальной машины, что совершенно противоположно модели общего ядра движка Docker. Вот почему для работы Docker Desktop ваш процессор должен поддерживать технологию виртуализации и Linux KVM. Вы можете проверить статус виртуализации в настройках UEFI/BIOS. Docker Desktop поддерживается в основных дистрибутивах Linux, таких как Ubuntu, Debian и Fedora.

Необходимость использовать виртуальную машину для рабочего стола Docker имеет множество причин. Некоторые из них описаны ниже.

  1. Использование виртуальной машины обеспечивает стабильную производительность и удобство работы Docker Desktop на всех платформах (Windows, Linux, macOS, Raspberry Pi и т. д.).
  2. Поскольку пользователи придерживаются версии своего дистрибутива с долгосрочной поддержкой, они не получают преимуществ новейших функций ядра. Использование виртуальной машины решает эту проблему. Теперь Docker может выбирать версию ядра и работать с последней версией ядра Linux.
  3. Использование виртуа

    Установка Docker Desktop

    езопасность пользователя. Как мы знаем, любой может загружать изображения в Docker Hub. Иногда изображения могут содержать вредоносный код, который может использовать ваш рабочий стол. Если вы перенесете такие вредоносные изображения на свой компьютер, они могут уничтожить ваш компьютер.
  4. Поскольку рабочий стол Docker работает внутри виртуальной машины, вредоносные изображения не могут повлиять на хост-компьютер. Это делает рабочий стол Docker отличным кандидатом для опробования новых образов Docker.

Сначала убедитесь, что ваша система поддерживает KVM, qemu, systemd-init и индикатор приложения. В вашей системе должно быть не менее 4 ГБ оперативной памяти.

  1. Удалите любую предыдущую версию Docker-desktop, установленную в вашей системе
sudo apt remove docker-desktop
  1. Для полной очистки всех файлов конфигурации выполните следующую команду:
rm -r $HOME/.docker/desktop
sudo rm /usr/local/bin/com.docker.cli
sudo apt purge docker-desktop
  1. Настройте репозиторий пакетов Docker, выполнив следующие команды.
sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
 
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. Теперь перейдите к этому страница выпуска и загрузите последнюю версию .debпакета Docker-desktop.
  2. Установите пакет .debс помощью dpkg.
sudo apt update
sudo apt install ./docker-desktop-<version>-<arch>.deb

Чтобы запустить рабочий стол Docker, выполните поиск в меню приложения и запустите приложение, как обычно. Там вы можете увидеть приветственного гида. Следуйте руководству, чтобы узнать больше о рабочем столе Docker для Linux и о том, как его использовать. Вы также можете создавать контейнеры и образы с помощью настольного приложения Docker.

Услуги, необходимые для WordPress

Для запуска WordPress внутри контейнеров Docker нам нужны в основном 3 компонента. Сначала нам нужен сам WordPress, затем нам нужна база данных MySQL, а затем нам нужно место для хранения или том.

WordPress хранит все пользовательские данные в базе данных MySQL. Поэтому база данных MySQL играет решающую роль в нашей установке WordPress.

Память или том необходимы, если вы хотите установить новые темы или плагины. Эти файлы тем или плагинов будут храниться внутри тома.

Использование файла Docker-Compose

Поскольку нашему приложению требуется более одного сервиса, лучше всего использовать Docker-compose. Docker Compose — это инструмент Docker, который инициирует и поддерживает контейнеры Docker, а также устанавливает связь между ними.

  1. Создайте новый файл docker-compose.yml.
sudo nano docker-compose.yml
  1. Из предыдущего раздела мы узнали, что нам нужны в основном 3 службы. Сам WordPress, база данных MySQL и пространство тома. Поэтому наш файл docker-compose будет выглядеть так. Вы можете скопировать этот файл docker-compose.yml, если вам не нужны какие-либо другие настройки.
version: '3.3'

services:
   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     volumes:
       - wordpress_files:/var/www/html
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: my_wordpress_db_password

   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: my_db_root_password
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: my_wordpress_db_password

volumes:
    wordpress_files:
    db_data:

В приведенном выше файле docker-compose мы сначала определяем WordPress и БД (с использованием базы данных MySQL) как сервис. Тогда WordPress зависит от БД для сохранения своих данных. Мы используем последний образ WordPress для создания контейнера WordPress. Контейнер WordPress резервирует порт 80. Это порт по умолчанию для веб-сервисов. Поэтому, когда вы вводите URL-адрес http://domain-name.comв браузере, этот контейнер WordPress отправляет вам ответ.

Внутри службы базы данных мы используем образ MySQL версии 5.7 для создания нашего контейнера. Затем мы даем все необходимые учетные данные для общения с нашим контейнером WordPress.

Наконец, мы определяем наши объемы. Там будут храниться все файлы WordPress и данные базы данных. Если вы используете эту настройку на сервере, вам необходимо регулярно создавать резервную копию этого тома.

Также читайте: Как настроить WordPress для локальной разработки в Linux Услуги, необходимые для WordPress

Теперь создайте папку или каталог и переместите в него файл docker-compose.yml. Затем запустите эту команду.

docker-compose up -d

После этой команды Docker извлечет все изображения, которые мы описываем, внутри нашего файла docker-compose.yml и создаст из него контейнер. Первый запуск может занять много времени, поскольку докеру придется загрузить все файлы из DockerHub. После того, как все настроено, когда вы загружаете IP-адрес вашего сервера в браузере, вы должны увидеть экран установки WordPress.

Поздравляем! Вы успешно запустили WordPress в контейнере Docker. Обратите внимание, что это еще не означает, что он готов к использованию в рабочей среде — вам все равно необходимо настроить SSL-сертификат.

Если вы хотите узнать больше о Docker, вы

Использование файла Docker-Compose

aintist.ru/2019/01/30/ispolzovat-doker-konteynery/" title="статья для начинающих.">статья для начинающих.

Читайте также: 6 лучших услуг хостинга WordPress для вашего сайта WordPress

Часто задаваемые вопросы

Могу ли я запустить Docker-desktop одновременно с движком Docker?

Да, вы можете одновременно запускать Docker-desktop и движок Docker на своем компьютере. Но когда обеим службам требуется доступ к одним и тем же системным ресурсам, таким как сетевые порты или тома, между ними возникает конфликт. Поэтому рекомендуется остановить одну службу перед запуском другой.

Рабочие столы Docker можно легко остановить с помощью приложения с графическим интерфейсом пользователя. Чтобы остановить движок Docker, выполните следующую команду.

sudo systemctl stop docker docker.socket containerd
sudo systemctl disable docker docker.socket containerd

Как автоматически запустить сайт WordPress после перезагрузки?

Если вы остановили свой сервер для обслуживания или обновления каких-либо материалов, вы можете настроить его на автоматический запуск WordPress после каждой перезагрузки с помощью Docker. Просто добавьте параметр restart: alwaysпод каждую службу вашего файла docker-compose. Вы можете увидеть этот параметр, который мы добавили в файл docker-compose.yml.

Могу ли я использовать Nginx с Docker-compose и WordPress?

Да, вы можете использовать Nginx или любой другой тип сервера для обслуживания контента WordPress с помощью Docker. Nginx также можно использовать в качестве обратного прокси. Вы можете легко распределять свой трафик, установив Nginx с Docker и WordPress.

Часто задаваемые вопросы

Могу ли я запустить Docker-desktop одновременно с движком Docker?

Как автоматически запустить сайт WordPress после перезагрузки?

Могу ли я использовать Nginx с Docker-compose и WordPress?

ПОХОЖИЕ СТАТЬИ

Популярные записи