Android

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

How To Set Up Ghost On Ubuntu 16.04

How To Set Up Ghost On Ubuntu 16.04

Оглавление:

Anonim

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

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

Предпосылки

Для выполнения этого урока вам понадобятся:

  • В соответствии с официальными системными требованиями Ghost вам необходимо как минимум 1 ГБ ОЗУ. Если у вас есть сервер с менее чем 1 ГБ ОЗУ, вы можете создать файл подкачки. Доменное имя, указывающее на IP вашего публичного сервера. В этом руководстве мы будем использовать example.com .Nginx, установленный, следуя инструкциям Как установить Nginx в Ubuntu 18.04. Брандмауэр настроен следующим образом: Как настроить брандмауэр с UFW в Ubuntu 18.04. Убедитесь, что порты 80 и 443 открыты.

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

Установка Node.js и пряжи

На момент написания этой статьи рекомендуемой версией 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 - 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 echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

Как только хранилище будет включено, установите пряжу с:

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 который используется для проверки 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 CLI и все предварительные условия выполнены, мы можем начать с установки.

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

cd /var/www/ghost

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

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 ✔ 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: ? Enter your Ghost database name: ghost_prod

Установщик создаст системного пользователя с именем ghost и спросит вас, хотите ли вы создать 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) [email protected] 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 [email protected] 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

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

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

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

Вывод

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

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

ghost nodejs нпм блог Ubuntu