Как установить Ghost на Ubuntu 18.04

How to Install Ghost on Ubuntu 18.04, Conclusion

19 Октября 2020 | Ubuntu

В этом руководстве мы покажем вам, как развернуть безопасный блог Ghost на сервере Ubuntu 18.04, используя Nginx в качестве прокси, бесплатный SSL-сертификат Let's Encrypt, последнюю LTS-версию Node.js и MySQL / MariaDB в качестве базы данных.

Как установить Ghost на Ubuntu 18.04

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


Введение

В качестве предварительных условий для выполнения этого руководства вам понадобятся:

Прежде чем продолжить это руководство, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .

Установка Node.js и Yarn 

На момент написания этой статьи рекомендуемой версией Node.js для Ghost была версия v8 carbon LTS. Мы установим Node.js из репозитория NodeSource.

Включите репозиторий NodeSource для Node.js v8, используя следующую curl команду :

curl -sL https://deb.nodesource.com/setup_8.x | sudo bash - 


   Установите Node.js, набрав:

sudo apt install nodejs 

      Чтобы узнать о других методах установки, ознакомьтесь с нашим руководством по установке Node.js в Ubuntu 18.04 .

Чтобы установить yarn, сначала включите репозиторий Yarn в вашей системе с помощью следующих команд:

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list 


    Как только репозиторий включен, установите yarn с помощью:

sudo apt update sudo apt-get -o Dpkg::Options::="--force-overwrite" install yarn 


Установка MySQL 

Ghost поддерживает базы данных MySQL , MariaDB и SQLite. В этом руководстве мы будем использовать MySQL, которая является рекомендуемой базой данных при запуске Ghost в производственном режиме.

Установите пакет MySQL с помощью следующей команды:

sudo apt install mysql-server 


    Выполните mysql_secure_installation команду, чтобы повысить безопасность установки MySQL:

sudo mysql_secure_installation 


    Вам будет предложено настроить, VALIDATE PASSWORD PLUGIN который используется для проверки надежности паролей пользователей MySQL. Существует три уровня политики проверки пароля: низкий, средний и надежный. Нажмите, ENTER если вы не хотите настраивать плагин проверки пароля.

В следующем запросе вам будет предложено установить пароль для пользователя root MySQL.

После установки пароля root сценарий также попросит вас удалить анонимного пользователя, ограничить доступ пользователя root к локальной машине и удалить тестовую базу данных. Вы должны ответить Y (да) на все вопросы.

Затем нам нужно изменить метод аутентификации с auth_socket на mysql_native_password , чтобы установщик Ghost мог получить доступ к нашему серверу MySQL. Для этого войдите на сервер MySQL как пользователь root:

sudo mysql 


и выполните следующий запрос, который установит пароль для пользователя root MySQL при использовании mysql_native_password метода:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_pasword'; FLUSH PRIVILEGES; 


    Убедитесь, что вы меняете надежный very_strong_pasword пароль.


Установка Ghost-CLI 

Мы установим Ghost с помощью официальной утилиты Ghost CLI. Эта утилита позволяет вам установить или обновить Ghost с помощью одной команды.

Ghost CLI доступен в виде пакета npm. Следующая команда установит Ghost CLI в вашу систему Ubuntu глобально:

sudo yarn global add ghost-cli 


Создание места установки Ghost 

Мы загрузим и установим Ghost в /var/www/ghost каталог, который является рекомендуемым местом для установки.

Чтобы создать каталог типа:

sudo mkdir -p /var/www/ghost 


    Измените владельца каталога на своего пользователя:

sudo chown $USER:$USER /var/www/ghost 


$USER
- это переменная среды, в которой хранится ваше имя пользователя.

Установите правильные разрешения для каталога :

sudo chmod 775 /var/www/ghost 


Установка Ghost 

Теперь, когда у вас установлен Ghost CLI и выполнены все предварительные требования, мы можем начать установку.

Перейти в /var/www/ghost каталог.

cd /var/www/ghost 


    Чтобы начать установку ghost install , которая установит и настроит Ghost, настроит Nginx как обратный прокси-сервер и защитит сайт с помощью бесплатного SSL-сертификата Let's encrypt.

ghost install 
✔ Checking system Node.js version
✔ Checking logged in user
✔ Checking current folder permissions
System checks failed with message: 'Linux version is not Ubuntu 16'
Some features of Ghost-CLI may not work without additional configuration.
For local installs we recommend using `ghost install local` instead.
? Continue anyway? (y/N) y
 


    Установщик проверит вашу систему и напечатает несколько предупреждений, как показано выше. Введите, y чтобы продолжить, и программа установки загрузит и установит Ghost:

ℹ Checking operating system compatibility [skipped]
✔ Checking for a MySQL installation
✔ Checking memory availability
✔ Checking for latest Ghost version
✔ Setting up install directory
✔ Downloading and installing Ghost v1.24.9
✔ Finishing install process
 


    Затем вам будет предложено установить URL-адрес вашего блога и информацию MySQL. Укажите имя пользователя root и пароль, которые мы установили в Installing MySQL разделе, и используйте имя базы данных по умолчанию ghost_prod .

? Enter your blog URL: https://example.com
? Enter your MySQL hostname: localhost
? Enter your MySQL username: root
? Enter your MySQL password: [hidden]
? Enter your Ghost database name: ghost_prod
 

Программа установки создаст системного пользователя с именем ghost и спросит вас, хотите ли вы создать пользователя-призрака MySQL, введите Yes .
   

✔ Configuring Ghost
✔ Setting up instance
Running sudo command: chown -R ghost:ghost /var/www/ghost/content
✔ Setting up "ghost" system user
? Do you wish to set up "ghost" mysql user? Yes
✔ Setting up "ghost" mysql user
 

Затем установщик спросит вас, хотите ли вы настроить Nginx. Подтвердите вводом Yes .

? Do you wish to set up Nginx? Yes
✔ Creating nginx config file at /var/www/ghost/system/files/example.com.conf
Running sudo command: ln -sf /var/www/ghost/system/files/example.com.conf /etc/nginx/sites-available/example.com.conf
Running sudo command: ln -sf /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/example.com.conf
Running sudo command: nginx -s reload
✔ Setting up Nginx
 

После настройки Nginx установщик спросит вас, хотите ли вы настроить SSL. Подтвердите ввод, Yes и мастер настройки попросит вас ввести адрес электронной почты, а затем сгенерирует бесплатный SSL-сертификат Let's Encrypt для вашего домена и настроит Nginx.


? Do you wish to set up SSL? Yes
? Enter your email (used for Let's Encrypt notifications) admin@example.com
Running sudo command: mkdir -p /etc/letsencrypt
Running sudo command: ./acme.sh --install --home /etc/letsencrypt
Running sudo command: /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt --domain example.com --webroot /var/www/ghost/system/nginx-root --reloadcmd "nginx -s reload" --accountemail admin@example.com
Running sudo command: openssl dhparam -out /etc/nginx/snippets/dhparam.pem 2048
Running sudo command: mv /tmp/ssl-params.conf /etc/nginx/snippets/ssl-params.conf
✔ Creating ssl config file at /var/www/ghost/system/files/example.com-ssl.conf
Running sudo command: ln -sf /var/www/ghost/system/files/example.com-ssl.conf /etc/nginx/sites-available/example.com-ssl.conf
Running sudo command: ln -sf /etc/nginx/sites-available/example.com-ssl.conf /etc/nginx/sites-enabled/example.com-ssl.conf
Running sudo command: nginx -s reload
✔ Setting up SSL
 

Затем установщик спросит вас, хотите ли вы настроить службу systemd. Введите, Y чтобы принять, и установщик создаст новую службу systemd с именем ghost_example-com и включит ее запуск при загрузке:

? Do you wish to set up Systemd? Yes
✔ Creating systemd service file at /var/www/ghost/system/files/ghost_example-com.service
Running sudo command: ln -sf /var/www/ghost/system/files/ghost_example-com.service /lib/systemd/system/ghost_example-com.service
Running sudo command: systemctl daemon-reload
✔ Setting up Systemd
 

Наконец, установщик настроит базу данных и спросит, хотите ли вы запустить Ghost, введите Yes .

Running sudo command: /var/www/ghost/current/node_modules/.bin/knex-migrator-migrate --init --mgpath /var/www/ghost/current
✔ Running database migrations
? Do you want to start Ghost? Yes
Running sudo command: systemctl is-active ghost_example-com
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
Running sudo command: systemctl is-active ghost_example-com
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking content folder ownership
✔ Checking memory availability
Running sudo command: systemctl start ghost_example-com
✔ Starting Ghost
Running sudo command: systemctl is-enabled ghost_example-com
Running sudo command: systemctl enable ghost_example-com --quiet
✔ Starting Ghost
You can access your publication at https://example.com
Next, go to your admin interface at https://example.com/ghost/ to complete the setup of your publication

Ghost uses direct mail by default
To set up an alternative email method read our docs at https://docs.ghost.org/docs/mail-config
 

Завершите настройку Ghost 

Откройте браузер, перейдите в интерфейс администратора Ghost по адресу, https://example.com/ghost/ и вы увидите следующий экран:



    Для начала нажмите на Create your account кнопку.

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



    После того, как вы заполните данные и нажмите Invite your team кнопку. 


 


    На этом экране вам будет предложено ввести адреса электронной почты ваших сотрудников. Вы можете просто нажать на I'll do this later, take me to my blog! ссылку, и вы будете перенаправлены на панель управления Ghost:



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

Вывод

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

Теперь вам следует посетить страницу справки Ghost и узнать больше о том, как управлять установкой Ghost. Вы также можете посетить Ghost Marketplace и познакомиться с темами Ghost.


    Комментарии

    Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Загрузка комментариев...