Как да разположите Ghost в Ubuntu 16.04

Ghost е платформа за блогове с отворен код, която набира популярност сред разработчиците и обикновените потребители след пускането си през 2013 г. Фокусира се върху съдържанието и блоговете . Най-привлекателното нещо при Ghost е неговият прост, изчистен и отзивчив дизайн. Можете да пишете публикациите си в блога от мобилен телефон. Съдържанието за Ghost е написано с помощта на езика Markdown.

В това ръководство ще настроим и внедрим защитен блог Ghost на Ubuntu 16.04 VPS, използвайки Let's Encrypt, най-новата LTS версия Node.js, най-новия основен клон на Nginx и най-новата версия на Ghost.

Да криптираме

Преди да започнете тази стъпка, уверете се, че сте задали DNS записи за вашия домейн.

Ще използваме Let's Encrypt, за да получим TLS сертификати за нашия блог Ghost. Не забравяйте да замените всички екземпляри на example.comс името на вашия домейн.

  1. Актуализиране на системата:

    apt update && apt upgrade -y
    
  2. Инсталирайте необходимите инструменти:

    apt install -y zip build-essential
    
  3. Инсталирайте клиента Let's Encrypt:

    apt install -y letsencrypt
    
  4. Проверете версията:

    letsencrypt --version
    # letsencrypt 0.4.1
    
  5. Вземете сертификат

    letsencrypt certonly -d example.com -d www.example.com --email [email protected] --agree-tos --standalone
    

След като преминете през предишни стъпки, вашият сертификат и частният ключ ще бъдат в /etc/letsencrypt/live/example.comдиректорията.

Инсталирайте NodeJS

Понастоящем Ghost поддържа само версии на Node 0.12.x , 4.2+ и 6.9+ .

Ще инсталираме препоръчителната версия за Ghost, която е v4 argon LTSкъм момента на писане.

  1. Изтеглете и инсталирайте LTS версията на Node.js:

    curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
    apt install -y nodejs
    
  2. Проверете версията на възел и NPM:

    node -v && npm -v
    # v4.6.2
    # 2.15.11
    

Инсталирайте Nginx

  1. Изтеглете и инсталирайте Nginx:

    wget https://nginx.org/keys/nginx_signing.key && apt-key add nginx_signing.key
    
    rm nginx_signing.key
    
    printf "deb https://nginx.org/packages/mainline/ubuntu/ xenial nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ xenial nginx \n" >> /etc/apt/sources.list.d/nginx.list
    
    apt update && apt install nginx -y
    
  2. Проверете версията на Nginx:

    nginx -v
    # nginx version: nginx/1.11.5
    
  3. Стартирайте процеса на Nginx:

    service nginx start
    
  4. Конфигурирайте Nginx като обратен прокси:

    vi /etc/nginx/conf.d/ghost.conf 
    
  5. Поставете следното в /etc/nginx/conf.d/ghost.conf:

    server {
        listen 80;
        listen [::]:80;
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name example.com www.example.com;
    
        ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    
        location / {
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_pass http://127.0.0.1:2368;
        }
    }
    
  6. Проверете синтаксиса:

    nginx -t
    
  7. Рестартирайте Nginx:

    service nginx restart
    

Инсталирайте Ghost

Ако искате да хоствате множество Ghost блогове на един и същ VPS, всеки Ghost екземпляр трябва да работи на отделен порт.

  1. Направете webrootдиректория:

    mkdir -p /var/www/
    
  2. Създайте потребител на Ghost:

    adduser ghost
    
  3. Изтеглете и инсталирайте Ghost:

    cd /var/www
    wget https://ghost.org/zip/ghost-latest.zip
    unzip ghost-latest.zip -d ghost
    chown -R ghost:ghost /var/www/ghost/
    rm ghost-latest.zip
    
  4. Превключете към ghostпотребителя:

    su - ghost
    
  5. Инсталирайте Ghost:

    cd /var/www/ghost
    npm install --production
    
  6. Конфигурирайте Ghost, като промените urlсвойството на productionобекта във config.jsфайла:

    cp config.example.js config.js
    
    vi config.js
    
    config = {
    // ### Production
    // When running Ghost in the wild, use the production environment.
    // Configure your URL and mail settings here
    production: {
        url: 'https://example.com',
        ...
    }
    ...
    ...        
    
  7. Запазете config.jsфайла и излезте.

  8. Стартирайте Ghost:

    npm start --production
    

    Ghost сега ще бяга. И предния край на блога, и интерфейсът на администратора са защитени с HTTPS и HTTP/2 също работи. Можете да отворите браузъра си и да посетите сайта на адрес https://example.com. Не забравяйте да замените example.comс името на вашия домейн.

Пускайте Ghost упорито

Ако затворите терминалната си сесия с вашия VPS , вашият блог също ще падне. Това не е добре. За да избегнем това, ще използваме мениджъра на процесите завинаги. Това ще поддържа блога ни 24/7.

  1. Превключете към ghostпотребител, ако не сте:

    su - ghost
    
  2. Отидете в ghostпапката

    cd /var/www/ghost
    
  3. Инсталирайте завинаги:

    npm install forever
    
  4. Добавете новата foreverкоманда към вашия път:

    echo "export PATH=/var/www/ghost/node_modules/forever/bin:$PATH" >> ~/.bashrc
    source ~/.bashrc
    
  5. Започнете Ghost с forever:

    NODE_ENV=production /var/www/ghost/node_modules/forever/bin/forever start index.js
    

    В този момент foreverтрябваше да започне Ghost.

  6. Отидете https://example.com/ghostи създайте администраторски акаунт на Ghost. Направете това възможно най-скоро.

Заключение

Това е. Вече имаме напълно функционален Ghost блог. Ако искате да промените темата на Ghost по подразбиране, наречена Casper, на персонализирана, можете просто да изтеглите и разархивирате темата в /var/www/ghost/content/themesпапката и да я изберете чрез администраторски интерфейс на Ghost, намиращ се на https://example.com/ghost.


Създаване на блог на Jekyll в Ubuntu 16.04

Създаване на блог на Jekyll в Ubuntu 16.04

Използване на различна система? Jekyll е чудесна алтернатива на WordPress за блогове или споделяне на съдържание. Не изисква никакви бази данни и е много лесно i

Как да инсталирате MODX Revolution на Ubuntu 16.04 LAMP VPS

Как да инсталирате MODX Revolution на Ubuntu 16.04 LAMP VPS

Използване на различна система? MODX Revolution е бърза, гъвкава, мащабируема, безплатна и отворена система за управление на съдържанието (CMS) от корпоративен клас, написана i

Как да инсталирате MODX Revolution на FreeBSD 11 FAMP VPS

Как да инсталирате MODX Revolution на FreeBSD 11 FAMP VPS

Използване на различна система? MODX Revolution е бърза, гъвкава, мащабируема система за управление на съдържанието (CMS) от корпоративен клас, написана на PHP. То и

Инсталирайте WordPress на OpenBSD 6.2

Инсталирайте WordPress на OpenBSD 6.2

Въведение WordPress е доминиращата система за управление на съдържанието в интернет. Той захранва всичко от блогове до сложни уебсайтове с динамично съдържание

Създаване на блог на Jekyll на CentOS 7

Създаване на блог на Jekyll на CentOS 7

Използване на различна система? Jekyll е добра алтернатива на WordPress. Не изисква никакви бази данни и работи с език, който мнозина познават

Как да инсталирате MODX Revolution на CentOS 7 LAMP VPS

Как да инсталирате MODX Revolution на CentOS 7 LAMP VPS

Използване на различна система? MODX Revolution е бърза, гъвкава, мащабируема, безплатна и отворена система за управление на съдържанието (CMS) от корпоративен клас, написана i

Инсталиране на Fork CMS на CentOS 7

Инсталиране на Fork CMS на CentOS 7

Използване на различна система? Fork е CMS с отворен код, написан на PHP. Изходният код на Forks се хоства на GitHub. Това ръководство ще ви покаже как да инсталирате Fork CM

Как да инсталирате Neos CMS на CentOS 7

Как да инсталирате Neos CMS на CentOS 7

Neos е иновативна система за управление на съдържанието с отворен код, която е чудесна за създаване и редактиране на онлайн съдържание. Имайки предвид авторите и редакторите, Neo

Как да разположите Ghost v0.11 LTS на CentOS 7.3

Как да разположите Ghost v0.11 LTS на CentOS 7.3

Използване на различна система? Ghost е платформа за блогове с отворен код, която набира популярност сред разработчиците и обикновените потребители от 201 г.

Как да инсталирате SilverStripe CMS на FreeBSD 11 FAMP VPS

Как да инсталирате SilverStripe CMS на FreeBSD 11 FAMP VPS

Използване на различна система? SilverStripe е гъвкава и разширяема система за управление на съдържанието (CMS) с отворен код, написана на PHP. Това е лесно

Как да разположите Ghost v0.11 LTS на Fedora 25

Как да разположите Ghost v0.11 LTS на Fedora 25

Използване на различна система? Ghost е платформа за блогове с отворен код, която набира популярност сред разработчиците и обикновените потребители от 201 г.

Как да разположите множество сайтове на Wordpress с помощта на Virtualmin и Ansible в Ubuntu 16.04

Как да разположите множество сайтове на Wordpress с помощта на Virtualmin и Ansible в Ubuntu 16.04

Често срещано използване на виртуален сървър Vultr е за хостване на уебсайтове на Wordpress. Това ръководство ви показва как да автоматизирате конфигурацията на виртуален сървър от нулата

Настройване на Ghost Professional Publishing Platform на OpenBSD 6

Настройване на Ghost Professional Publishing Platform на OpenBSD 6

Ghost е най-новата и най-добрата нова, която да съперничи на WordPress. Разработването на теми е бързо и лесно за научаване, защото разработчиците на Ghost решиха да използват и двете

Инсталирайте и конфигурирайте блог Ghost v1.0.0 в Ubuntu 16.04

Инсталирайте и конфигурирайте блог Ghost v1.0.0 в Ubuntu 16.04

Ghost е модерна платформа за публикуване с отворен код, изградена на Node.js с администраторски клиент Ember.js, JSON API и API за тема, задвижван от Handlebars.js. Ghos

Как да инсталирате MODX Revolution на Fedora 26 LAMP VPS

Как да инсталирате MODX Revolution на Fedora 26 LAMP VPS

Използване на различна система? MODX Revolution е бърза, гъвкава, мащабируема, безплатна и отворена система за управление на съдържанието (CMS) от корпоративен клас, написана i

Как да инсталирате Dotclear на Debian 9 (разтягане)

Как да инсталирате Dotclear на Debian 9 (разтягане)

Използване на различна система? Dotclear е много прост двигател за блогове. Той е с отворен код и лесен за използване. Този урок ще премине през инсталацията

Инсталиране на Fork CMS на Ubuntu 16.04 LTS

Инсталиране на Fork CMS на Ubuntu 16.04 LTS

Използване на различна система? Fork е CMS с отворен код, написан на PHP. Изходният код на Forks се хоства на GitHub. Това ръководство ще ви покаже как да инсталирате Fork CM

Как да разположите Ghost на Debian 8.7

Как да разположите Ghost на Debian 8.7

Използване на различна система? Ghost е платформа за блогове с отворен код, която набира популярност сред разработчиците и обикновените потребители след пускането си през 2013 г. аз

Инсталиране на Fork CMS на Debian 9

Инсталиране на Fork CMS на Debian 9

Използване на различна система? Fork е CMS с отворен код, написан на PHP. Изходният код на Forks се хоства на GitHub. Това ръководство ще ви покаже как да инсталирате Fork CM

Как да инсталирате Typesetter CMS на CentOS 7

Как да инсталирате Typesetter CMS на CentOS 7

Typesetter е CMS с отворен код, написан на PHP, фокусиран върху лекотата на използване с True WYSIWYG редактиране и съхранение на плосък файл. В тази статия ще инсталираме

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече