GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara menggunakan Ghost Blog dengan Nginx di Ubuntu 18.04 LTS

Hantu adalah platform blogging sumber terbuka sepenuhnya (lisensi MIT), yang semakin populer di kalangan pengembang dan pengguna biasa sejak dirilis pada tahun 2013. Kode sumber hantu tersedia untuk umum di GitHub. Ghost biasanya memakan waktu sekitar ~300MB dari RAM berjalan dengan baik, sehingga dapat berjalan pada perangkat keras sederhana. Ini menempatkan fokus pada konten dan blogging . Hal yang paling menarik dari Ghost adalah desainnya yang sederhana, bersih, elegan, dan responsif. Anda dapat menulis posting blog Anda dari ponsel. Konten untuk Ghost ditulis dan diformat menggunakan bahasa Markdown. Ghost sangat cocok untuk individu atau kelompok kecil penulis. Ghost juga memiliki dukungan bawaan untuk Accelerated Mobile Pages (AMP ) project, yang akan membuat pemuatan blog Anda secepat kilat di ponsel.


Baru-baru ini, pengembang Ghost merilis rilis pertama dan stabil dari Ghost - 1.0.0. Ghost 1.0.0 memperkenalkan banyak fitur baru dan yang paling terkenal di antaranya adalah: editor penurunan harga baru, antarmuka pengguna yang diperbarui (UI ), desain tema default baru, proses penginstalan dan pembaruan yang baru dan lebih baik dengan Ghost-CLI alat.


Dalam tutorial ini, kita akan menyiapkan dan menerapkan blog Ghost yang aman dengan bantuan Ghost-CLI Ghost. alat di Ubuntu 18.04 LTS server menggunakan Ayo Enkripsi , Acme.sh , Node.js , npm , Benang , NGINX dan MySQL /MariaDB .

Persyaratan

  • Nama domain. Tutorial ini akan menggunakan domain example.com.
  • Server yang menjalankan Ubuntu 18.04 LTS dengan 1GB atau RAM.
  • Pengguna non-root dengan hak istimewa sudo.

Langkah Awal

Periksa versi Ubuntu Anda:

lsb_release -ds 
# Ubuntu 18.04 LTS

Siapkan zona waktu:

timedatectl list-zona waktu
sudo timedatectl set-timezone 'Wilayah/Kota'

Perbarui paket sistem operasi Anda:

sudo apt update &&sudo apt upgrade -y

Instal build-essential paket:

sudo apt install -y build-essential

Langkah 1 - Instal Node.js dan npm

CATATAN :Ghost 1.0.0 terbaru saat ini mendukung versi Node.js 8.9+ dan 6,9+ saja.

Ghost dibuat di Node.js. Kami akan memasang disarankan versi untuk Ghost yaitu v8 Carbon LTS pada saat tutorial penulisan ini. Di Linux Anda memiliki beberapa pilihan instalasi:Linux Binaries (x86/x64), Source Code atau melalui Package Managers. Kami akan menggunakan metode Package Manager dengan memanfaatkan repositori Nodesource.

Unduh dan instal Dukungan Jangka Panjang terbaru (LTS ) versi (rilis) dari Node.js:

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install -y nodejs

CATATAN :npm didistribusikan dengan Node.js - yang berarti bahwa ketika Anda mengunduh Node.js, Anda secara otomatis menginstal npm di komputer Anda.

Periksa versi Node.js dan npm :

node -v &&npm -v
# v8.11.2
# 5.6.0

Npm adalah proyek terpisah dari Node.js, dan cenderung lebih sering diperbarui. Akibatnya, meskipun Anda baru saja mengunduh Node.js (dan karenanya npm), Anda mungkin perlu memperbarui npm Anda. Untungnya, npm tahu cara memperbarui dirinya sendiri! Untuk memperbarui npm Anda, ketik ini ke terminal Anda:

sudo npm install -g [dilindungi email]

Periksa kembali versi npm, seharusnya versi terbaru:

npm -v
# 6.1.0

Langkah 2 - Instal server MariaDB

Ghost mendukung database MySQL/MariaDB dan SQLite. Namun, dalam tutorial ini, kita akan menggunakan database MariaDB. Jika mau, Anda dapat menggunakan MySQL, bukan MariaDB.

Download dan instal versi stabil terbaru server MariaDB dari repositori MariaDB di komputer Anda:

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt -repositori 'deb [arch=amd64] https://mirrors.nxthost.com/mariadb/repo/10.3/ubuntu bionic main'
sudo apt update
sudo apt install -y mariadb-server

Selama proses instalasi MariaDB, Anda akan diminta untuk memasukkan MariaDB root kata sandi pengguna. Anda harus memasukkan kata sandi yang kuat.

Periksa versi MariaDB:

mysql --version &&sudo mysqld --version
# mysql  Ver 15.1 Distrib 10.3.7-MariaDB, untuk debian-linux-gnu (x86_64) menggunakan readline 5.2
# mysqld  Ver 10.3.7 -MariaDB-1:10.3.7+maria~bionic-log untuk debian-linux-gnu di x86_64 (distribusi biner mariadb.org)

Periksa apakah daemon MariaDB telah dimulai dan berjalan:

sudo systemctl status mysql.service
sudo systemctl is-enabled mysql.service

Jalankan mysql_secure_installation utilitas (skrip) untuk meningkatkan keamanan penginstalan MariaDB Anda:

sudo mysql_secure_installation


# Masukkan kata sandi saat ini untuk root (masukkan untuk tidak ada):

# Ubah kata sandi root? [Y/n] T
# Hapus pengguna anonim? [Y/n] Y
# Larang login root dari jarak jauh? [Y/n] Y
# Hapus database pengujian dan akses ke database tersebut? [Y/n] Y
# Muat ulang tabel hak istimewa sekarang? [Y/n] Y
# Sukses.

# Selesai! Jika Anda telah menyelesaikan semua langkah di atas, penginstalan MariaDB
Anda seharusnya sudah aman.

# Terima kasih telah menggunakan MariaDB!

Login (sambungkan) ke baris perintah MariaDB sebagai root MariaDB pengguna:

mysql -u root -p

Buat database dan pengguna MariaDB baru untuk penginstalan Ghost. Langkah ini opsional, karena alat Ghost-CLI di langkah selanjutnya dapat membuat database untuk Anda, Anda hanya perlu memasukkan kredensial pengguna root MariaDB (nama pengguna &kata sandi) ketika diminta oleh Ghost-CLI selama instalasi Ghost:

mysql> CREATE DATABASE dbname;
mysql> CREATE USER 'username'@'localhost' DIIDENTIFIKASI DENGAN 'password';
mysql> GRANT ALL ON dbname.* TO 'username'@'localhost';
mysql> HAK ISTIMEWA FLUSH;

Keluar (putuskan) dari MariaDB:

mysql> EXIT;

Langkah 3 - Instal NGINX

NGINX (engine-x) adalah server web, penyeimbang beban, cache, dan server proxy berkinerja tinggi yang bekerja dengan baik di semua lingkungan:Bare Metal, Public/Private/Hybrid Cloud, dan Containers. NGINX akan digunakan sebagai proxy terbalik untuk aplikasi Ghost kami.

NGINX dapat diinstal secara berbeda, tergantung pada sistem operasinya. Untuk Linux, paket NGINX dari nginx.org dapat digunakan.

Unduh dan instal aliran utama terbaru (disarankan untuk sebagian besar penerapan ) rilis NGINX dan modul yang dapat dimuat secara dinamis langsung dari repositori NGINX resmi:

wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf " deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n">> /etc/apt/sources.list.d/nginx_mainline.list
keluar
sudo apt update
sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt

Verifikasi bahwa NGINX diinstal dengan memeriksa versinya:

sudo nginx -v &&sudo nginx -V
# versi nginx:nginx/1.15.0
# versi nginx:nginx/1.15.0

Mulai dan aktifkan NGINX:

sudo systemctl start nginx.service
sudo systemctl aktifkan nginx.service

Buat /etc/nginx/snippets, /etc/nginx/ssl/etc/nginx/sites-available dan /etc/nginx/sites-enabled direktori. Direktori ini diperlukan agar alat Ghost-CLI berfungsi dengan benar:

sudo mkdir -p /etc/nginx/{snippets,ssl,sites-available,sites-enabled}

Tambahkan ke include /etc/nginx/sites-enabled/*.conf; arahan ke nginx.conf file, jalankan:

sudo vim /etc/nginx/nginx.conf

Simpan file dan keluar dari editor Vim.

Langkah 4 - Instal Benang (opsional)

Download dan instal Pengelola paket Benang di sistem Anda:

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
sudo apt update &&sudo apt install -y yarn

Periksa versi Benang:

benang --version
# 1.7.0

Langkah 5 - Memasang Ghost-CLI

Ghost-CLI adalah alat antarmuka baris perintah (CLI) yang memudahkan pemasangan dan pembaruan Ghost. Ini menyiapkan database, mengonfigurasi NGINX sebagai proxy terbalik, mengaktifkan keamanan TLS/SSL menggunakan Let's Encrypt CA, memperbarui SSL Anda secara otomatis, dan menginisialisasi Ghost sebagai layanan systemd. Ghost-CLI adalah modul npm yang dapat diinstal melalui npm atau yarn .

Unduh dan instal alat Ghost-CLI:

sudo npm install -g [email protected]
# atau dengan Yarn
sudo yarn global add [email protected]

Periksa versi Ghost-CLI :

versi hantu
# Versi Ghost-CLI:1.8.1

Memecahkan masalah sistem untuk setiap potensi masalah saat memasang atau memperbarui Ghost:

instal dokter hantu

Langkah 6 - Instal Ghost

Selanjutnya, kita akan menginstal Ghost menggunakan alat Ghost-CLI.

Pertama, buat direktori root dokumen kosong:

sudo mkdir -p /var/www/example.com

Ubah kepemilikan /var/www/example.com direktori ke pengguna non-root dengan sudo hak istimewa yang Anda buat. Dalam contoh ini, johndoe:

sudo chown johndoe:johndoe /var/www/example.com

Folder instalasi Anda harus memiliki izin yang benar:

sudo chmod 755 /var/www/example.com

Arahkan ke direktori root Ghost:

cd /var/www/example.com

Pastikan direktori kosong untuk menghindari konflik file:

ls -a

Instal Ghost dalam mode produksi dengan menjalankan:

instalasi hantu

Jawab setiap pertanyaan seperti yang diminta:

? Enter your blog URL: https://example.com
? Enter your MySQL hostname: localhost
? Enter your MySQL username: root
? Enter your MySQL password: your_mysql_root_user_password_here
? Enter your Ghost database name: database_name_for_ghost
? Do you wish to set up "ghost" mysql user? yes ? 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) [email protected] ? Do you wish to set up Systemd? yes ? Do you want to start Ghost? yes

Setelah instalasi selesai, jalankan

ghost ls

untuk melihat proses Ghost yang sedang berjalan.

Di masa mendatang, untuk memperbarui blog Ghost Anda ketika versi yang lebih baru dirilis, Anda hanya perlu menjalankan

pembaruan hantu

perintah, dari direktori instalasi Ghost dan Ghost-CLI akan mengurus semuanya untuk Anda.

Langkah 7 - Selesaikan penyiapan Ghost

Untuk menyelesaikan proses penyiapan, buka halaman konfigurasi Ghost dengan menambahkan /ghost ke akhir URL atau IP blog Anda. Contoh ini menggunakan https://example.com/ghost .

Pada layar pembuka, klik Buat akun Anda :

Masukkan email Anda, buat pengguna, sandi, dan judul blog:

Undang anggota tambahan ke tim Anda. Jika Anda lebih memilih untuk melewati langkah ini, klik Saya akan melakukannya nanti, bawa saya ke blog saya! di bagian bawah halaman.

Navigasi area admin Ghost untuk membuat postingan pertama Anda, mengubah tema situs, atau mengonfigurasi setelan tambahan:

Selamat! Anda telah berhasil menginstal dan menerapkan platform blogging Ghost di server Ubuntu 18.04 LTS.


Ubuntu
  1. Cara Menginstal Phorum dengan Nginx di Ubuntu 18.04 LTS

  2. Cara Menyebarkan Modsecurity dengan Nginx di Ubuntu 20.04 LTS

  3. Terapkan Modsecurity dengan Nginx di Ubuntu 20.04 LTS

  1. Cara Menginstal Nextcloud dengan Nginx di Ubuntu 18.04 LTS

  2. Cara Menginstal Seafile dengan Nginx di Ubuntu 20.04 LTS

  3. Cara Memasang Varnish Reverse Proxy dengan Nginx di Ubuntu 16.04 LTS

  1. Cara Menginstal Seafile dengan Nginx di Ubuntu 18.04 LTS

  2. Cara Menginstal OroCRM dengan Nginx di Ubuntu 16.04 LTS

  3. Cara Menginstal Nginx dengan Kompresi Brotli di Ubuntu 18.04 LTS