Установка Ghost с Docker Compose
Данная статья предназначена для тех, кто искал подробное и понятное руководство о том, как установить Ghost с Docker Compose.
Ghost — это бесплатная платформа для ведения блогов с открытым исходным кодом, написанная на JavaScript и распространяемая по лицензии MIT, предназначенная для упрощения процесса онлайн-публикации.
В этом руководстве мы будем рассматривать тот случай, когда у вас уже есть сервер с установленной на нем операционной системой Ubuntu Server 22.04 LTS.
Подробно о том, как установить Ubuntu Server 22.04 LTS, вы можете прочитать в моем руководстве “Установка Ubuntu Server 22.04 LTS”.
Также на сервере должен быть установлен Docker Engine и Docker Compose.
Узнать о том, как установить Docker Engine на Ubuntu Server, вы можете, прочитав “Установка Docker Engine и Docker Compose на Ubuntu Server”.
Кроме того, на сервер должен быть установлен OpenSSH, а также открыт 22 порт, чтобы иметь возможность подключаться к серверу по протоколу SSH.
Для установки OpenSSH на сервер вы можете воспользоваться командой:
sudo apt install openssh-server
Если вы планируете подключиться к серверу, используя операционную систему Windows, то можете воспользоваться PuTTY или MobaXterm.
В данном руководстве рассматривается подключение к серверу при помощи терминального эмулятора iTerm2, установленного на операционную систему macOS.
Обратите внимание, вам потребуется открыть следующие порты TCP для доступа к вашему серверу:
- TCP порт 80 - для получения бесплатного криптографического сертификата через центр сертификации Let’s Encrypt.
- TCP порт 443 - для доступа к веб-интерфейсу Ghost.
Подключаемся к серверу, на который планируется установить Ghost.
Теперь нужно создать конфигурационный файл YAML, который будет содержать все необходимые условия для работы Ghost.
Создадим конфигурационный файл YAML, воспользовавшись текстовым редактором, с помощью команды:
vim ghost-traefik-letsencrypt-docker-compose.yml
Нажимаем на кнопку “i”, чтобы перейти в режим редактирования, затем вставляем следующую конфигурацию для работы Ghost.
Далее вам необходимо внести изменения в конфигурацию, чтобы содержимое файла соответствовало вашим условиям. Параметры, которые требуется проверить или в которые нужно внести изменения имеют пометку “(replace with yours)”.
В данном руководстве для доступа к Ghost из сети Интернет будет использоваться субдомен ghost.heyvaldemar.net. Вам нужно будет указать ваш домен или субдомен, по которому ваш Ghost будет доступен из сети Интернет.
Обратите внимание, в данном руководстве в качестве системы для управления базами данных будет использоваться MySQL, а в качестве reverse proxy - Traefik.
В параметре “traefik.http.middlewares.authtraefik.basicauth.users” необходимо указать имя пользователя и хэш пароля для доступа к панели управления Traefik.
Обратите внимание, для получения хэша пароля можно воспользоваться данным сервисом.
Теперь нажмите на кнопку “Esc”, чтобы выйти из режима редактирования, а затем введите “:x” и нажмите на кнопку “Enter”, чтобы сохранить изменения и выйти из редактора.
Теперь запустим Ghost с помощью команды:
docker compose -f ghost-traefik-letsencrypt-docker-compose.yml -p ghost up -d
Для продолжения процесса установки Ghost необходимо с рабочей станции перейти по ссылке https://ghost.heyvaldemar.net/ghost, где ghost.heyvaldemar.net - имя моего сервера. Соответственно, вам необходимо указать имя вашего сервера Ghost.
Далее указываем название сайта, ваше полное имя, адрес электронной почты и пароль для создания учетной записи администратора Ghost.
Нажмите на кнопку “Create account & start publishing”.
Добро пожаловать в панель упралвения Ghost.
Для доступа к панели управления Traefik необходимо с рабочей станции перейти по ссылке https://traefik.ghost.heyvaldemar.net, где traefik.ghost.heyvaldemar.net — имя моего сервера. Соответственно, вам необходимо указать имя вашего сервера с установленным Traefik.
Указываем имя пользователя и пароль, заданный ранее в конфигурационном файле YAML, и нажимаем на кнопку “OK”.
Добро пожаловать в панель управления Traefik.