Ghost – це сучасна платформа з відкритим вихідним кодом, призначена для створення професійних блогів і сайтів. Вона побудована на Node.js і пропонує гладкий, інтуїтивно зрозумілий інтерфейс для написання і публікації контенту.
Ghost популярний завдяки своїй простоті, швидкості та вбудованим SEO-функціям, які дають змогу користувачам створювати красиві сайти, не вимагаючи великих технічних знань.
Необхідні умови
Перед початком роботи переконайтеся, що у вас є:
- Сервер під керуванням Ubuntu 24.04 або пізнішої версії.
- Користувач, який не є користувачем root, з правами sudo.
- Доменне ім’я, вказане на ваш сервер Ubuntu.
У цьому посібнику ви дізнаєтеся, як встановити Ghost на сервер Ubuntu і налаштувати Nginx (популярний веб-сервер) для розміщення вашого блогу.
Крок 1: Вкажіть доменне ім’я на вашому сервері
Увійдіть на свій сервер і за допомогою команди ip знайдіть публічну IP-адресу вашого сервера Ubuntu.
ip addr
Відобразиться список мережевих інтерфейсів і відповідних їм IP-адрес. Знайдіть рядок inet поруч із використовуваним інтерфейсом (наприклад, eth0 для дротового підключення, wlan0 для бездротового).
Далі перейдіть на сайт хостингової компанії, де ви зареєстрували своє доменне ім’я, і додайте новий DNS-запис (запис A), вказавши на публічну IP-адресу сервера Ubuntu.
Після додавання почекайте, поки зміни в DNS поширяться, і переконайтеся, що ваш домен вказує на IP-адресу вашого сервера. Цей процес може зайняти кілька хвилин, але може розтягнутися і на 24-48 годин.
Після завершення цих кроків ваше доменне ім’я вказуватиме на ваш сервер, готовий до встановлення Ghost.
Крок 2: Встановлення необхідних залежностей
Для встановлення Ghost необхідно встановити кілька залежностей, як-от Nginx, Node.js, NPM і сервер MySQL, але перед цим потрібно оновити списки пакетів із репозиторіїв, а потім оновити всі встановлені пакети до останніх версій.
sudo apt update && sudo apt upgrade -y
Потім встановіть необхідні залежності, як показано на малюнку.
sudo apt install nginx -y
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo bash -
sudo apt-get install -y nodejs
sudo apt install mysql-server -y
Крок 3: Створення бази даних MySQL для Ghost
Після встановлення mysql-сервера необхідно захистити встановлення MySQL, налаштувавши такі параметри безпеки, як видалення анонімних користувачів, заборона віддаленого входу в систему root, видалення тестової бази даних і встановлення пароля для користувача root.
sudo mysql_secure_installation
Потім увійдіть у MySQL і створіть базу даних і користувача для Ghost.
CREATE DATABASE ghost_db;
CREATE USER 'ghost_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON ghost_db.* TO 'ghost_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Крок 4: Встановіть Ghost-CLI на Ubuntu
Тепер встановіть Ghost CLI, який буде встановлений глобально і дасть вам змогу використовувати його для встановлення, управління та оновлення блогів Ghost з командного рядка.
sudo npm install -g ghost-cli
Створіть каталог для Ghost і дайте йому відповідні права:
sudo mkdir -p /var/www/ghost
sudo chown $USER:$USER /var/www/ghost
sudo chmod 775 /var/www/ghost
Перейдіть у каталог і встановіть Ghost:
cd /var/www/ghost
ghost install
Дотримуючись підказок, налаштуйте сайт, вказавши дані про домен і базу даних MySQL, а також створивши користувача-адміністратора.
Крок 5: Налаштуйте Nginx для Ghost
Створіть файл конфігурації Nginx для Ghost.
sudo nano /etc/nginx/sites-available/ghost
Додайте наступну конфігурацію і переконайтеся, що ви замінили your_domain.com на ваше фактичне доменне ім’я, а також налаштуйте параметри проксі-сервера відповідно до ваших вимог у файлі конфігурації сервера.
server {
listen 80;
server_name your_domain.com;
location / {
proxy_pass http://127.0.0.1:2368;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Активуйте конфігурацію, створивши символічне посилання.
sudo ln -s /etc/nginx/sites-available/ghost /etc/nginx/sites-enabled/
Перевірте конфігурацію Nginx.
sudo nginx -t
Якщо перевірка пройшла успішно, перезапустіть Nginx.
sudo systemctl restart nginx
Крок 6: Захистіть свій сайт Ghost за допомогою SSL
Тепер вам потрібно захистити свій блог Ghost, встановивши Certbot, який використовується для автоматизації процесу отримання та оновлення SSL/TLS-сертифікатів для серверів Nginx.
sudo apt install certbot python3-certbot-nginx -y
Отримайте сертифікат SSL.
sudo certbot --nginx -d your_domain.com
Дотримуйтесь підказок, щоб завершити встановлення.
Крок 7: Доступ до блогу Ghost
Тепер ви можете отримати доступ до свого блогу Ghost, перейшовши за адресою http://your_domain.com у своєму веб-браузері.
Щоб розмістити зразок веб-сайту, увійдіть в інтерфейс адміністратора Ghost за адресою http://your_domain.com/ghost і почніть налаштування нового сайту Ghost.
Після входу в систему:
- Перейдіть у розділ «Пости» і створіть новий пост, щоб побачити, як працює створення контенту.
- Вивчіть меню «Налаштування», щоб налаштувати зовнішній вигляд і функціональність вашого сайту.
- Використовуйте теми, щоб змінити зовнішній вигляд вашого сайту.
Висновок
Вітаємо! Ви успішно встановили та налаштували Ghost на Ubuntu з Nginx.
Тепер ваш новий блог Ghost працює, і ви можете відразу ж почати публікувати контент. Інтуїтивно зрозумілий дизайн і потужні функції Ghost роблять його чудовим вибором для створення професійного онлайн-представництва.