Gif of small pixel dog running back and forth along the top of the page. His name is Byte.

Multiple Ghost Blogs on One Server

I love Ghost. In the past year I’ve migrated all of my sites from WordPress and I have never looked back. However, the increased cost of running a VPS for each site adds up. There are a lot of forum discussions on how to install multiple ghost blogs on one server, but they all suggest complicated Docker setups or post this outdated article from 2013.

It turns out it’s very simple - so I will show you how.

First, get your Ubuntu server (I can vouch for Digital Ocean or Linode). Then, follow the Server Setup instructions here up until the Install Ghost section. Be careful of using special characters in the password you choose. I had a backtick (`) in mine and it messed up the MySQL commands.

Now follow the instructions for Install Ghost, except make two directories, one for each site:

# Make the first directory
sudo mkdir -p /var/www/firstsite.com

# Replace <user> with the name of your user who will own this directory
sudo chown <user>:<user> /var/www/firstsite.com

# Set the correct permissions
sudo chmod 775 /var/www/firstsite.com

# Make the second directory
sudo mkdir -p /var/www/secondsite.com

# Replace <user> with the name of your user who will own this directory
sudo chown <user>:<user> /var/www/secondsite.com

# Set the correct permissions
sudo chmod 775 /var/www/secondsite.com

Finally, navigate into each folder and run ghost install - and it’s that easy! Ghost takes care of the Nginx config for you. Just repeat the steps above and run as many blogs as your server can handle.

More Posts: