Tips Install Multiple Ghost CMS 3.0 Dalam Satu Server

ghost Nov 27, 2019

Jika anda mencari tutorial install multiple Ghost CMS, kemungkinan besar anda sudah mulai suka dengan Ghost CMS, saya sendiri baru menggunakan satu untuk blogging, yaitu blog cloudborneo ini, namun tidak ada salahnya untuk mengetahui cara install multiple Ghost CMS dalam satu server, selain memudahkan kita untuk menambahkan satu blog lagi pada server yang sudah ada Ghost CMS karena semua keperluannya sudah terinstall, juga dapat menghemat banyak biaya untuk sewa server hosting.

Pertama-tama, anda harus sudah menginstall Ghost CMS pertama anda sebelum menambah installasi Ghost CMS baru dalam satu server. bisa anda baca pada artikel disini https://cloudborneo.com/cara-install-ghost-cms-3-0-di-panel-directadmin-pada-centos-7/. kemudian silahkan ulangi langkah - langkahnya seperti berikut ini :

# pindah ke directory yang diinginkan
cd /home/borneo/

# buat folder ghost
mkdir ghost2
cd ghost2/

# download ghost cms
wget https://ghost.org/zip/ghost-latest.zip

unzip ghost-latest.zip
install multiple ghost cms

Ikuti langkah-langkah installasi dan perubahan settingan pada config untuk depelovment dan untuk production pada artikel sebelumnya, yang perlu diperhatikan hanyalah merubah port config.development.json dari 2368 ke port lain. port lain ini harus belum pernah dipakai, misal 2369, namun anda juga harus merubah/menyesuaikan port ini pada config defaults.json, bisa anda ikuti diartikel ini https://cloudborneo.com/tips-mengganti-listen-port-2368-ghost-cms-3-0-ke-berbagai-port/

saat ini anda sudah punya 2 installasi Ghost CMS, yaitu ghost dan ghost2, nah setelah selesai installasi Ghost CMS yang kedua, saatnya membuat nginx configuration untuk reverse proxy, caranya sama pada artikel installasi Ghost CMS 3.0, perbedaanya hanya di :

# http port 80
server
{
        listen [ip-public-server]:80;
        server_name cloudborneo2.com www.cloudborneo2.com ;
        access_log /var/log/nginx/domains/cloudborneo2.com.log;
        access_log /var/log/nginx/domains/cloudborneo2.com.bytes bytes;
        error_log /var/log/nginx/domains/cloudborneo2.com.error.log;
        if ($http_x_forwarded_proto != 'https') {
                return 301 https://$host$request_uri;
        }
        add_header Strict-Transport-Security max-age=31536000;
        add_header X-Content-Type-Options nosniff;
        add_header X-Frame-Options "ALLOW-FROM https://cloudborneo2.com/" always;
        location /
        {
            proxy_pass http://127.0.0.1:2369;
            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-Proto https;
            proxy_set_header   X-Forwarded-Host $server_name;
            proxy_read_timeout 36000s;
        }
}


# ssl port 443 https
server
{
        listen [ip-public-server]:443 ssl http2;
        server_name cloudborneo2.com www.cloudborneo2.com ;
        access_log /var/log/nginx/domains/cloudborneo2.com.log;
        access_log /var/log/nginx/domains/cloudborneo2.com.bytes bytes;
        error_log /var/log/nginx/domains/cloudborneo2.com.error.log;
        ssl_certificate /usr/local/directadmin/data/users/borneo/domains/cloudborneo2.com.cert.combined;
        ssl_certificate_key /usr/local/directadmin/data/users/borneo/domains/cloudborneo2.com.key;
        add_header Strict-Transport-Security max-age=31536000;
        add_header X-Content-Type-Options nosniff;
        add_header X-Frame-Options "ALLOW-FROM https://cloudborneo2.com/" always;
        location /
        {
            proxy_pass http://127.0.0.1:2369;
            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-Proto https;
            proxy_set_header   X-Forwarded-Host $server_name;
            proxy_read_timeout 36000s;
        }
}
nginx reverse proxy ghost cms 3.0

Nah, tinggal melakukan otomatisasi untuk process manager dengan PM2, untuk memahami PM2 bisa baca artikel berikut https://cloudborneo.com/manajemen-ghost-cms-3-0-dengan-process-manager-pm2-pada-directadmin-centos-7/, hal yang perlu dilakukan dengan PM2 adalah :

# ke directory ghost 2
NODE_ENV=production pm2 start index.js --name "Ghost Cloudborneo2.com"

# start ghost
pm2 start Ghost\ Cloudborneo2.com

#stop ghost
pm2 stop Ghost\ Cloudborneo2.com

#restart ghost
pm2 restart Ghost\ Cloudborneo2.com
process manager pm2

Dengan begini, anda bisa melakukan installasi Ghost CMS 3.0 sesuai dengan resource server yang anda miliki, semakin besar spesifikasi server anda, maka semakin banyak website dengan Ghost CMS yang bisa ditampung.

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