Cara Backup dan Update Ghost CMS 3.0.2 ke 3.1.1 [Manual]

ghost Dec 23, 2019

Jika saat ini anda pengguna Ghost CMS, tentu anda tahu bahwa update rilis terbaru dari versi Ghost CMS sangat cepat, dalam satu bulan saja sudah ada beberapa versi yang dirilis dari repository githubnya. Tidak ada salahnya jika tetap menggunakan versi Ghost CMS yang sudah stabil terinstall di server kita, namun ada banyak kelebihan lainnya jika kita menggunakan Ghost CMS yang terbaru. seperti penambahan fitur baru, fix bug, update security dan lain sebagainya.

Berikut list update Ghost CMS ke 3.1.1

sparkles Added support for secondary navigation (#11409) - Hannah Wolfe
sparkles Improved adding first members on no-members screen (#1416) - Naz Gargol
sparkles Added member "add" screen (#1411) - Naz Gargol
sparkles Added Secondary Navigation (#1410) - Hannah Wolfe
art Fixed test newsletter email subject - Peter Zimon
art Scaled email mobile preview - Peter Zimon
art Added Gravatars for member avatars (#1417) - Naz Gargol
bug Fixed 500 errors for incorrect Origin headers (#11433) - Fabien O'Carroll
bug Fixed email preview header position - Peter Zimon
Casper (the default theme) has been upgraded to 3.0.5:
sparkles Added secondary navigation (#664) - Peter Zimon
List Update Ghost CMS ke 3.1.1

Pada tutorial sebelumnya, saya sudah membahas cara update Ghost CMS dengan menggunakan Ghost CLI, bisa dibaca disini, jika anda tidak melakukan installasi pada sistem operasi yang didukung secara official Ghost, maka anda harus update secara manual. Seperti pada tutorial saya sebelumnya tentang cara install manual Ghost CMS disini. pada tutorial kali ini, adalah cara update Ghost CMS secara manual tanpa Ghost CLI, disarankan anda update dan install menggunakan Ghost CLI jika server anda support Ghost CLI.

Pada proses installasi manual ini, anda harus cek terlebih dahulu versi Ghost CMS terbaru yang sudah rilis, klik pada user profil dan klik menu About Ghost. terlihat disini Ghost CMS yang terinstall adalah versi 3.0.2 dan rilis terbaru Ghost CMS versi 3.1.1

Halaman About Ghost CMS versi Terbaru

Backup Ghost CMS

Sebelum update, backup terlebih dahulu Ghost CMS anda, login via SSH dan lakukan backup dengan copy root folder Ghost CMS dengan nama baru, sebagai contoh, folder Ghost CMS yang lama adalah ghost dan copy dengan nama cloudborneo.com, berikut perintahnya :

cp -r ghost cloudborneo.com
Copy Ghost CMS

Lakukan di server yang anda gunakan

Backup Ghost CMS ke folder baru

kemudian download Ghost CMS versi terbaru di website Ghost dengan wget, berikut perintah untuk download Ghost CMS dengan Wget :

wget https://ghost.org/zip/ghost-latest.zip
download Ghost CMS terbaru

berikut output proses download Ghost CMS terbaru :

Output download Ghost CMS terbaru

Setelah download selesai, unzip ghost cms dengan folder baru, misal ghost-new agar folder ghost sebelumnya tidak tertimpa, unzip dengan perintah berikut :

unzip ghost-latest.zip -d ghost-new
unzip Ghost CMS terbaru

Berikut output unzip Ghost CMS yang telah didownload :

Output unzip Ghost CMS Terbaru

Ghost CMS terbaru selesai di extract, namun data-datanya masih seperti installasi baru, saatnya kita lakukan pemindahan data content Ghost CMS sebelumnya ke Ghost CMS yang baru kita download dengan perintah cd ghost-new berikut outputnya :

Pindah ke Direktori Ghost CMS baru
pada saat menjalankan perintah dibawah ini, harap hati-hati, backup terlebih dahulu Ghost CMS anda, segala kerusakan akibat tutorial ini bukan tanggung jawab kami


Upgrade Ghost CMS Manual

saat ini anda berada di root folder Ghost CMS terbaru, namun Ghost CMS terbaru ini masih menggunakan file content default, kemudian file config juga masih default, agar proses upgrade sempurna, folder content dan settingan config kita ambil dari Ghost CMS yang lama, jadi terlebih dahulu hapus file - file berikut di Ghost CMS yang baru :

rm -rf content
rm core/server/config/defaults.json
rm core/server/config/env/config.*
remove folder content dan file config Ghost CMS

kemudian copy folder content pada Ghost CMS lama ke Ghost CMS baru, copy juga file config pada Ghost CMS lama ke Ghost CMS baru, pindah ke direktori luar dengan perintah cd ../ dan copy folder content pada folder ghost (folder ghost ini adalah root folder Ghost CMS sebelumnya)

cd ../
cp -rf ghost/content ghost-new/content
cp ghost/core/server/config/defaults.json ghost-new/core/server/config/defaults.json
cp ghost/core/server/config/env/config.* ghost-new/core/server/config/env/
cd ghost-new
npm install --production
Migrasi file Ghost CMS lama ke Ghost CMS baru

setelah proses migrasi selesai, saatnya kita stop proses Ghost CMS lama, dan running Ghost CMS baru, untuk memudahkan manajemen prosesnya saya menggunakan Proses Manager PM2 yang saya install pada sistem operasi server, untuk cara installasinya dapat dibaca disini. untuk melihat semua proses yang dimanajemen PM2 gunakan perintah pm2 ls, berikut outputnya :

Output PM2 ls

perhatikan pada bagian name dari output list PM2, nama Ghost CMS yang akan saya stop adalah Ghost cloudborneo.com, stop proses tersebut dengan perintah pm2 stop Ghost\ cloudborneo.com, tambahkan backslash \ pada karakter khusus, seperti dalam kasus saya ini menggunakan spasi pada name  dari Ghost CMS. berikut output setelah stop proses Ghost CMS dengan PM2 :

Output PM2 stop Ghost\ cloudborneo.com

saat ini website dengan Ghost CMS anda sedang stop (tidak bisa diakses), segera start Ghost CMS baru anda, pindah ke direktori Ghost CMS baru anda dengan perintah cd ghost-new, kemudian jalankan perintah berikut :

NODE_ENV=production pm2 start index.js --name "Ghost Cloudborneo.com"
PM2 Start Ghost CMS

pada perintah tersebut saya menjalankan lagi Ghost CMS terbaru dengan PM2, dan namanya hanya saya bedakan dari huruf besar pada Cloudborneo, pada nama NODE_ENV bersifat case sensitive, jadi tetap dianggap nama yang berbeda, berikut output setelah start Ghost CMS baru dengan PM2 :

output Ghost CMS start dengan PM2

dari list dapat kita lihat proses baru dengan status online, dan versinya adalah versi terbaru saat ini, 3.1.1, untuk memastikan, akses kembali website anda, dan cek pada menu About Ghost, jika versi sudah sama, maka proses upgrade anda telah selesai seperti berikut ini :

Sukses Update Ghost CMS Manual

Coba cek kembali semua post dan settingan plugin dan lain sebagainya, pastikan semua sudah sukses, jika ada kegagalan, stop terlebih dahulu Ghost CMS baru dengan perintah pm2 stop Ghost\ Cloudborneo.com perhatikan dan ulangi langkah-langkah sebelumnya jika ada kesalahan, jika anda ingin kembali ke versi sebelumnya start kembali Ghost CMS lama dengan perintah pm2 start Ghost\ cloudborneo.com untuk delete list dari PM2 gunakan perintah pm2 delete Ghost\ cloudborneo.com. sekian tutorial kali ini, semoga sukses.

M. Najamudin Ridha

Penikmat coffe cappucino ice, apalagi tanpa gula. Menyukai teknologi open source, terutama yang berbasis web dan mobile, senang mencoba hal - hal seperti linux, sysadmin, database dan programming