CMS Ghost Установка

Описание

Ghost- это мощное приложение для профессиональных издателей, позволяющее создавать, делиться и развивать бизнес на основе своего контента. Оно поставляется с современными инструментами для создания веб-сайта, публикации контента, рассылки информационных бюллетеней и предложения платных подписок пользователям.

Данная система позволяет создать свой сайт\блог, управлять статьями, со своей системой регистрации.

Установка

Есть инструкции установки другими способами на самом сайте системы - https://ghost.org/docs/install/. Здесь же будет установка на Linux Ubuntu

Официально рекомендуемая производственная установка требует следующего стека:

  • Ubuntu 20.04 или Ubuntu 22.04
  • NGINX (минимум 1.9.5 для SSL)
  • А поддерживаемая версия из Node.js
  • MySQL 8
  • Systemd
  • Сервер с памятью не менее 1GB
  • Зарегистрированное доменное имя
⚠️
Перед началом работы вы должны настроить рабочий DNS A-Record с вашего домена, указывая на IP-адрес сервера. Это должно быть сделано заранее, чтобы SSL можно было настроить во время установки.

Создать нового пользователя

Откройте свой терминал и войдите на новый сервер в качестве пользователя root:

Подключитесь по SSH

ssh root@your_server_ip

Создайте нового пользователя:

adduser <user>

Вместо <user> напишите свое имя пользователя

⚠️
Примечание: Использование имени пользователя ghost вызывает конфликты с Ghost-CLI, поэтому важно использовать альтернативное имя.

Добавьте пользователя в группу sudo :

usermod -aG sudo <user>

Зайдите под готовым пользователем:

su - <user>

Обновление пакетов

Убедитесь, что списки пакетов и установленные пакеты обновлены.

sudo apt-get update
sudo apt-get upgrade

Установить NGINX

Ghost использует сервер NGINX, а конфигурация SSL требует NGINX 1.9.5 или выше.

sudo apt-get install nginx

Если ufw был активирован брандмауэр, который позволяет HTTP и HTTPS соединения. Открытый брандмауэр:

sudo ufw allow 'Nginx Full'

Установить MySQL

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

sudo apt-get install mysql-server

В более новых версиях Ubuntu пользователь root, созданный при установке MySQL, по умолчанию будет настроен на использование аутентификации на основе сокетов, это означает, что только пользователь root Unix сможет аутентифицировать.

Ghost не поддерживает этот вид аутентификации, поэтому вы должны изменить корневой пользователь MySQL, чтобы иметь пароль.

Запустите эти команды, чтобы у пользователя root был пароль:
Вход в mysql

sudo mysql

Установка нового пароля:

ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' BY '<your-new-root-password>';

Вместо <your-new-root-password> установите свой новый, надежный пароль

FLUSH PRIVILEGES;
exit

Установить Node.js

Вам нужно будет иметь поддерживаемая версия узла, установленного в масштабах всей системы в порядке, описанном ниже. Если у вас есть другая настройка, вы можете столкнуться с проблемами.

sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
NODE_MAJOR=18
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt-get update
sudo apt-get install nodejs -y

Установить Ghost-CLI

Призрак CLI это инструмент командной строки, который поможет вам установить Ghost и настроить его для использования, быстро и легко. Модуль npm может быть установлен с npm или yarn.

sudo npm install ghost-cli@latest -g

После установки вы всегда можете запустить ghost help чтобы посмотреть список доступных команд.

Установить Ghost

Как только ваш сервер будет правильно настроен и ghost-cli установлен, вы можете установить сам Ghost. Следующие шаги являются рекомендуемой настройкой. Если вам нужен более мелкозернистый контроль, CLI имеет флаги и опции это позволяет вам сломать и настроить этапы установки.

Создать каталог

Ghost должен быть установлен в собственном каталоге, с надлежащим владельцем и разрешениями.

sudo mkdir -p /var/www/<sitename>

Вместо <sitename> укажите название папки со своим сайтом

sudo chown <user>:<user> /var/www/<sitename>
sudo chmod 775 /var/www/<sitename>
cd /var/www/<sitename>

Запустите процесс установки

Теперь мы устанавливаем Ghost с одной последней командой.

ghost install

Установить вопросы

Во время установки CLI задаст ряд вопросов по настройке вашего сайта.

Blog URL
Введите точный URL-адрес, по которому будет доступна ваша публикация, и включите протокол для HTTP или HTTPS. Например, https://example.com. Если вы используете HTTPS, Ghost-CLI предложит настроить SSL для вас. Использование IP-адресов приведет к ошибкам.


MySQL hostname
Это определяет, откуда можно получить доступ к базе данных MySQL. Когда MySQL установлен на одном сервере, используйте localhost (пресса Enter использовать значение по умолчанию). Если MySQL установлен на другом сервере, введите имя вручную.


MySQL username / password
Если у вас уже есть существующая база данных MySQL, введите имя root. В противном случае, введите root. Затем поставьте пароль для вашего пользователя.


Ghost database name
Введите имя вашей базы данных. Он будет автоматически настроен для вас, если вы не используете не-root пользователь/пропуск MySQL. В этом случае база данных уже должна существовать и иметь правильные разрешения.


Set up a ghost MySQL user? (Рекомендуется)
Если вы предоставили пользователю root MySQL, Ghost-CLI может создать пользовательский пользователь MySQL, который может получить доступ/редактировать только вашу новую базу данных Ghost и ничего больше.


Set up NGINX? (Рекомендуется)
Установите NGINX автоматически, позволяя вашему сайту просматриваться внешним миром. Настройка NGINX вручную возможна, но почему вы выбираете трудную жизнь?


Set up SSL? (Рекомендуется)
Если бы вы использовали https URL-адрес блога и уже указали ваш домен в нужное место, Ghost-CLI может автоматически настроить SSL для использования Let’s Encrypt. Кроме того, вы делаете это позже, запуская ghost setup ssl в любое время.

⚠️
Установка сертификации SSL требует адреса электронной почты, чтобы вы могли быть проинформированы, если есть какие-либо проблемы с вашим сертификатом, в том числе во время обновления.

Set up systemd? (Рекомендуется)
systemd является рекомендуемым инструментом менеджера процессов, чтобы Ghost работал бесперебойно. Мы рекомендуем выбирать yes но можно настроить собственное управление процессами.


Start Ghost?
Выбор yes запускает Ghost и заставляет ваш сайт работать.

Использование

После установки заходим на свой сайт, для попадания в панель управления сайта необходимо пройти по адресу https://example.com/ghost и создать пользователя.

Приятного пользования.