Ας κρυπτογραφήσουμε
Εγκαταστήστε το NodeJS
Εγκαταστήστε το Nginx
Εγκαταστήστε το Ghost
Εκτελέστε το Ghost επίμονα
συμπέρασμα
Το Ghost είναι μια πλατφόρμα blogging ανοιχτού κώδικα που κερδίζει δημοτικότητα μεταξύ των προγραμματιστών και των απλών χρηστών από την κυκλοφορία της το 2013. Δίνει έμφαση στο περιεχόμενο και το blogging . Το πιο ελκυστικό πράγμα για το Ghost είναι ο απλός, καθαρός και ανταποκρινόμενος σχεδιασμός του. Μπορείτε να γράψετε τις αναρτήσεις του ιστολογίου σας από ένα κινητό τηλέφωνο. Το περιεχόμενο για το Ghost γράφεται χρησιμοποιώντας τη γλώσσα Markdown.
Σε αυτόν τον οδηγό πρόκειται να δημιουργήσουμε και να αναπτύξουμε ένα ασφαλές ιστολόγιο Ghost σε ένα Ubuntu 16.04 VPS χρησιμοποιώντας Let's Encrypt, την πιο πρόσφατη έκδοση LTS Node.js, τον πιο πρόσφατο κλάδο κύριας γραμμής του Nginx και την τελευταία έκδοση του Ghost.
Ας κρυπτογραφήσουμε
Πριν ξεκινήσετε αυτό το βήμα, βεβαιωθείτε ότι έχετε ορίσει εγγραφές DNS για τον τομέα σας.
Θα χρησιμοποιήσουμε το Let's Encrypt για να αποκτήσουμε πιστοποιητικά TLS για το ιστολόγιό μας Ghost. Μην ξεχάσετε να αντικαταστήσετε όλες τις εμφανίσεις του example.comμε το όνομα τομέα σας.
Σύστημα ενημέρωσης:
apt update && apt upgrade -y
Εγκαταστήστε τα απαραίτητα εργαλεία:
apt install -y zip build-essential
Εγκαταστήστε το πρόγραμμα-πελάτη Let's Encrypt:
apt install -y letsencrypt
Ελέγξτε την έκδοση:
letsencrypt --version
# letsencrypt 0.4.1
Λήψη πιστοποιητικού
letsencrypt certonly -d example.com -d www.example.com --email john.doe@mail.com --agree-tos --standalone
Αφού ολοκληρώσετε τα προηγούμενα βήματα, το πιστοποιητικό και το ιδιωτικό κλειδί σας θα βρίσκονται στον /etc/letsencrypt/live/example.comκατάλογο.
Εγκαταστήστε το NodeJS
Ghost υποστηρίζει προς το παρόν εκδόσεις Κόμβος 0.12.x , 4.2+ και 6.9+ μόνο.
Θα εγκαταστήσουμε τη συνιστώμενη έκδοση για το Ghost που βρίσκεται v4 argon LTSτη στιγμή της συγγραφής αυτής.
Κατεβάστε και εγκαταστήστε την έκδοση LTS του Node.js:
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
apt install -y nodejs
Ελέγξτε την έκδοση Node και NPM:
node -v && npm -v
# v4.6.2
# 2.15.11
Εγκαταστήστε το Nginx
Κατεβάστε και εγκαταστήστε το 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
Ελέγξτε την έκδοση Nginx:
nginx -v
# nginx version: nginx/1.11.5
Ξεκινήστε τη διαδικασία Nginx:
service nginx start
Διαμορφώστε το Nginx ως αντίστροφο διακομιστή μεσολάβησης:
vi /etc/nginx/conf.d/ghost.conf
Επικολλήστε τα ακόλουθα στο /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;
}
}
Ελέγξτε τη σύνταξη:
nginx -t
Επανεκκινήστε το Nginx:
service nginx restart
Εγκαταστήστε το Ghost
Εάν θέλετε να φιλοξενήσετε πολλά ιστολόγια Ghost στο ίδιο VPS, κάθε παρουσία Ghost πρέπει να εκτελείται σε ξεχωριστή θύρα.
Δημιουργία webrootκαταλόγου:
mkdir -p /var/www/
Δημιουργήστε έναν χρήστη Ghost:
adduser ghost
Κατεβάστε και εγκαταστήστε το 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
Εναλλαγή στο ghostχρήστη:
su - ghost
Εγκαταστήστε το Ghost:
cd /var/www/ghost
npm install --production
Διαμορφώστε το 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',
...
}
...
...
Αποθήκευση config.jsαρχείου και έξοδος.
Start Ghost:
npm start --production
Το Ghost θα τρέχει τώρα. Τόσο το front-end ιστολογίου όσο και η διεπαφή διαχειριστή είναι ασφαλισμένα με HTTPS και το HTTP/2 λειτουργεί επίσης. Μπορείτε να ανοίξετε το πρόγραμμα περιήγησής σας και να επισκεφτείτε τον ιστότοπο στη διεύθυνση https://example.com. Μην ξεχάσετε να αντικαταστήσετε example.comμε το όνομα τομέα σας.
Εκτελέστε το Ghost επίμονα
Εάν κλείσετε την περίοδο σύνδεσης του τερματικού σας με το VPS σας, το ιστολόγιό σας θα σβήσει επίσης. Αυτό δεν είναι καλό. Για να αποφευχθεί αυτό, θα χρησιμοποιήσουμε τον διαχειριστή διαδικασιών Forever. Αυτό θα κρατήσει το blog μας ανοιχτό 24/7.
Εναλλαγή σε ghostχρήστη εάν δεν είστε:
su - ghost
Μεταβείτε στο ghostφάκελο
cd /var/www/ghost
Εγκατάσταση για πάντα:
npm install forever
Προσθέστε τη νέα foreverεντολή στη διαδρομή σας:
echo "export PATH=/var/www/ghost/node_modules/forever/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Ξεκινήστε το Ghost με το για πάντα:
NODE_ENV=production /var/www/ghost/node_modules/forever/bin/forever start index.js
Σε αυτό το σημείο, foreverθα έπρεπε να είχε ξεκινήσει το Ghost.
Μεταβείτε https://example.com/ghostκαι δημιουργήστε έναν λογαριασμό διαχειριστή Ghost. Κάντε αυτό το συντομότερο δυνατό.
συμπέρασμα
Αυτό είναι. Τώρα έχουμε ένα πλήρως λειτουργικό ιστολόγιο Ghost. Εάν θέλετε να αλλάξετε το προεπιλεγμένο θέμα Ghost που ονομάζεται Casper σε προσαρμοσμένο, μπορείτε απλώς να κάνετε λήψη και να αποσυμπιέσετε το θέμα στο /var/www/ghost/content/themesφάκελο και να το επιλέξετε μέσω της διεπαφής διαχειριστή Ghost, που βρίσκεται στη διεύθυνση https://example.com/ghost.