Install Ghost blogging platform on Ubuntu
Guide to deploying Ghost (open-source blogging CMS) on Ubuntu with Nginx reverse proxy, MySQL, and Let’s Encrypt TLS via Ghost-CLI.
Source
- Linode: How to Install Ghost CMS on Ubuntu 18.04 LTS (published Feb 2020)
Stack
| Component | Role |
|---|---|
| Ghost | Node.js CMS with Markdown editor |
| Ghost-CLI | Install, update, nginx/systemd/SSL setup |
| Nginx | Reverse proxy |
| MySQL | Database |
| Node.js LTS | Ghost runtime |
| Let’s Encrypt | TLS (via Ghost-CLI prompts) |
Prerequisites
- Non-root sudo user (example:
ghostexample) - Valid domain with DNS pointing at the server
sudo apt update && sudo apt upgradesudo apt install build-essential
Install flow (summary)
- Nginx:
sudo apt install nginx - MySQL:
sudo apt install mysql-server, set root password inmysql - Node.js: NodeSource LTS setup +
sudo apt install nodejs - Ghost-CLI:
sudo npm install -g ghost-cli@latest - App directory:
sudo mkdir -p /var/www/ghost, chown to deploy user,cd /var/www/ghost - Install:
ghost install— answer URL, DB, nginx, SSL, systemd prompts - Finish setup: browse
https://your-domain.com/ghostand create admin account
Maintenance
bash
ghost ls
ghost update
ghost doctorReplace example.com in the Linode guide with your domain. Newer Ubuntu versions may need adjusted Node LTS lines — cross-check Ghost docs.