Preporučeni sistemski stog za proizvodne instalacije
Prije nego što počneš
Korak 1 - Instalirajte MySQL
Korak 2 - Instalirajte NGINX
Korak 3 - Instalirajte Node.js i NPM
Korak 4 - Instalirajte Ghost-CLI
Korak 5 - Instalirajte Ghost
Zaključak
Ghost je moderna platforma za objavljivanje otvorenog koda izgrađena na Node.js s administratorskim klijentom Ember.js , JSON API-jem i API-jem teme koji pokreće Handlebars.js . Ghost tim je nedavno izdao novu verziju Ghost-a s puno novih značajki i poboljšanja: novi uređivač markdowna s alatnom trakom koji će vam pomoći u oblikovanju vašeg posta, poboljšanja korisničkog sučelja/UX-a, povlačenje i ispuštanje više slika, poboljšana instalacija i proces ažuriranja s novim alat pod nazivom Ghost-CLI , nova zadana tema Casper v2.0.0 i još mnogo toga. Ostavljam vama da istražite više nakon što ga instalirate.
U ovom vodiču ćemo instalirati, postaviti i konfigurirati Ghost v1.0.0 na Ubuntu 16.04 LTS koristeći MySQL, Let's Encrypt, Node.js, NPM, Ghost-CLI i NGINX.
NOTE: Ubuntu 16.04 LTS is the only officially supported Linux distribution. It is not possible to install Ghost v1.0.0 on other Linux distributions. In future, it will probably be possible to install it when they add support for other distributions in Ghost-CLI tool.
Preporučeni sistemski stog za proizvodne instalacije
Ghost tim preporučuje sljedeći poslužiteljski stog i postavljanje za produkcijsku instalaciju bloga Ghost v1.0.0:
- Ubuntu 16.04 kao operativni sustav s minimalno 1 GB RAM-a (može se koristiti swap)
- Systemd (za upravljanje Ghost procesom)
- MySQL kao preporučeni mehanizam baze podataka
- NGINX (minimalno 1.9.5 za SSL)
- Node.js v6 instaliran preko NodeSource spremišta
- NPM ili Yarn upravitelj paketa
- C++ prevodilac
- Ne-root korisnika za pokretanje
ghostnaredbi
Prije nego što počneš
Provjerite verziju Ubuntua:
lsb_release -ds
# Ubuntu 16.04.3 LTS
Napravite novi nekorijenski korisnički račun s sudopristupom i prebacite se na njega:
NOTE: Replace johndoe with your username
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
Postavite vremensku zonu:
sudo dpkg-reconfigure tzdata
Provjerite je li vaš sustav ažuriran:
sudo apt update && sudo apt upgrade -y
Instaliraj build-essentialpaket:
sudo apt install -y build-essential
Korak 1 - Instalirajte MySQL
Prvo, morat ćemo instalirati MySQL bazu podataka jer je Ghost preporučuje kao bazu podataka za proizvodno okruženje.
Preuzmite i instalirajte MySQL:
sudo apt install -y mysql-server
NOTE: You will be prompted to enter password for the MySQL "root" user. Enter strong password!
Provjerite verziju MySQL:
mysql --version
# mysql Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper
Učvrstite MySQL poslužitelj pokretanjem mysql_secure_installationskripte:
sudo mysql_secure_installation
Korak 2 - Instalirajte NGINX
Zatim moramo instalirati softver NGINX. Koristit će se kao obrnuti proxy za našu aplikaciju Ghost. Ghost-CLI može automatski konfigurirati NGINX kao obrnuti proxy.
Preuzmite i instalirajte NGINX:
sudo apt install -y nginx
Provjerite verziju NGINX-a:
sudo nginx -v
# nginx version: nginx/1.10.3 (Ubuntu)
Korak 3 - Instalirajte Node.js i NPM
Ghost v1.0.0 currently supports Node.js versions 6.9+ and 4.5+ only. The recommended version of Node.js to use with Ghost v1.0.0 is currently Node.js v6 Boron LTS.
Ghost je izgrađen na Node.js. Ghost slijedi Nodeov LTS plan, podržavajući samo LTS verzije Node.js-a. Dakle, morat ćemo instalirati najnoviju LTS verziju Node.js.
Preuzmite i instalirajte Node.js i NPM:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt install -y nodejs
Provjerite verziju Node.js i NPM:
node -v && npm -v
# v6.11.3
# 3.10.10
Korak 4 - Instalirajte Ghost-CLI
Ghost-CLI je CLI alat za instalaciju i ažuriranje Ghost-a. Olakšava instalaciju i ažuriranje Ghost-a. Može postaviti bazu podataka za vas, konfigurirati NGINX kao obrnuti proxy, postaviti TLS sigurnost korištenjem Let's Encrypt, automatsku obnovu SSL-a i postaviti ghost kao systemd uslugu. Za vas će se pobrinuti za osnovnu sigurnost stvaranjem namjenskog korisnika sustava koji je pozvan ghostza pokretanje Ghost bloga.
Instalirajte Ghost-CLI putem npm-a:
sudo npm install -g ghost-cli@latest
Provjerite verziju Ghost-CLI:
ghost version
# Ghost-CLI version: 1.1.1
Pokrenite ghost doctornaredbu da provjerite je li vaše okruženje kompatibilno s Ghost-CLI:
ghost doctor
✔ Checking system Node.js version
✔ Checking current folder permissions
✔ Checking operating system
✔ Checking MySQL is installed
✔ All install checks passed
Potražite pomoć oko ghostnaredbe:
ghost help
Da biste dobili konkretniju pomoć o ghostpodnaredbama, možete pokrenuti ghost help <command>. Na primjer da biste dobili pomoć oko ghost confignaredbe, pokrenite:
ghost help config
Korak 5 - Instalirajte Ghost
NOTE: Make sure DNS records for your domain are set up. This tutorial uses example domain blog.example.tld. Replace blog.example.tld with your domain/hostname.
Sada smo spremni za instalaciju Ghost CMS-a. Jedini način za instaliranje Ghost v1.0.0 je korištenje Ghost-CLI alata.
Napravite korijenski direktorij dokumenta:
sudo mkdir -p /var/www/ghost
Promijenite vlasništvo /var/www/ghostdirektorija na ne-korijenskog korisnika s sudoprivilegijama koje ste kreirali na početku ovog vodiča:
sudo chown <johndoe>:<johndoe> /var/www/ghost
Idite na korijenski direktorij dokumenta:
cd /var/www/ghost
NOTE: Make sure /var/www/ghost directory is empty before installing Ghost and your user must own this directory.
Instalirajte Ghost u proizvodnom načinu:
ghost install
Odgovarajte na pitanja koja to potakne. Za više informacija o pitanjima koja se postavljaju posjetite Ghost dokumente :
? Enter your blog URL: https://blog.example.tld
? Enter your MySQL hostname: localhost
? Enter your MySQL username: root
? Enter your MySQL password: [Enter password you created when you installed MySQL]
? Enter your Ghost database name: [Whatever you want]
? Do you wish to set up Nginx? yes
? Do you wish to set up SSL? yes
? Enter your email (used for Let's Encrypt notifications) [Your email for Let's Encrypt]
? Do you wish to set up "ghost" mysql user? yes
? Do you wish to set up Systemd? yes
? Do you want to start Ghost? yes
NOTE: After installation, NGINX configuration files will be in /var/www/ghost/system/files directory. Ghost-CLI will ask you Do you wish to set up Nginx? and if your answer is yes, then it will configure NGINX as a reverse proxy for you automatically. Your NGINX config files will be in {your_ghost_installation_dir}/system/files directory.
Nakon što je instalacija dovršena, možete pokrenuti ghost lsda vidite pokrenuti Ghost proces:
ghost ls
Također da biste provjerili je li Ghost instaliran, možete ghost versionponovno pokrenuti iz /var/www/ghostdirektorija:
ghost version
# Ghost-CLI version: 1.1.1
# Ghost Version (at /var/www/ghost): 1.8.4
U budućnosti, kada bude objavljena novija verzija Ghost-a, samo pokrenite ghost updatenaredbu iz /var/www/ghostdirektorija za ažuriranje ghost-a. Također, prije ažuriranja napravite sigurnosnu kopiju svog bloga iz administratorskog sučelja.
Da biste dovršili postupak postavljanja i stvorili Ghost administratorski račun, idite na stranicu s konfiguracijom Ghosta dodavanjem /ghostna kraj URL-a svog bloga. Ovaj primjer koristi https://blog.example.tld/ghost.
Zaključak
Uspješno smo instalirali i konfigurirali naš novi blog Ghost v1.0.0 za proizvodnju. Ghost-CLI alat nam uvelike olakšava život eliminirajući ručne korake koje smo morali učiniti sa starijim v0.11.xGhostom. Također možete sve učiniti ručno bez pomoći Ghost-CLI alata, ali ćete izgubiti mogućnost jednostavnog ažuriranja bloga ghost updatenaredbom. Raditi sve ručno je naporno i ne preporučuje se. Jedini nedostatak je činjenica da druge distribucije Linuxa trenutno nisu podržane.