Today, I'm going to write you a good article about installation of Ghost CMS on Plesk Panel.
But, I must say thank you to @Raoul Kramer about this installation cause if I didn't find him, I won't able to install Ghost on Plesk!
Now, It's actually easy to deploy Ghost on Plesk!
If you haven't any VPS or Cloud Server you can get it 2 months free credit via Digital Ocean: Free $100 Credit for 2 months
Note: This guide maded via Plesk Obsidian v18.0.33_build1800210123.00 os_Debian 10.0 and Ghost version 3.41.4
Let's Start to the our Adventure 🥱Before starting the installation, let's handle our SSL via Let's Encrypt FREE SLL. It's necessary to make your site Secured so users will trust you with this.
Watch my guide how to make your website secured via Let's Encrypt FREE
You must open your hosting on plesk via Subscriptions section. Afterwards, you must enable the NodeJS extension via Extensions. If you not know how to do it, you can see the picture, it will gives you vision about it.
Now, go to the your subscription (which is mean your domain on plesk) and open file manager. Afterwards, you must get Ghost's latest version from their website which you can access via this link: Ghost Latest Version
When you download the latest Ghost, you must upload the zip file via File Manager on Plesk. You can do it easly! Why I'm saying to use about File Manager? Because if you are linux newbie, when you upload your files via root, your all files will have root permission and grant. It's a big security problem to handle it. So, you can upload via File Manager and it's so easy.
Now, Go to the File Manager and upload ghost via drag and drop.
When the extraction is done, we need create a file named as .npmrc and we must put this words in it.
We need to type this code because NPM installation will gives you some error if you not put this code.
Afterwards, we need to edit some files under the /core/shared/config and /core/shared/config/env/
- defaults.json file (this file stays in /core/shared/config/
- config.production.json file (this file stays in /core/shared/config/env/)
Editing the defaults.json file like this;
Here, we just change the URL section and you must set true url of your website, that's all. Nothing more!
Second File, before the start, you must open a database and database user for your domain. You need to download it first on plesk panel because it's not opening via Plesk Code Editor.
You can get it on here: https://codepen.io/fbattal/pen/bGBgpVe
Now we need to enable NodeJS for our website! Now, go to the subscriptions and click to your domain. Afterwards, open NodeJS extension and click to Enable button on the top.
You must set Document Root to /httpdocs/app/ I don't know why is required but it's required 🥱Afterwards, Application Root will be /httpdocs/ if it's already set like that, you may not touch. Change the Application Startup File name to index.js afterwards, click the NPM Install button and wait for installation. When the installation ends, Pop-Up will appear and it will says with yellow color theme, it's done.
You must restart the app on the top and that's it! your Ghost CMS ready to use. You can enter for your user setup, https://yourdomain.name/ghost and put your email address, name, etc.
Thanks for your time! If you having troubles or problems with the installation you can contact me via Twitter, Email, Comment as you wish!