Ghost

Ghost is a fully open source, adaptable platform for building and running a modern blog or publication. The Ghost 1-Click App allows you to self-host your own Ghost instance up and running in two minutes.

If you would like Ghost to manage your blog for you instead, the Ghost Pro plans start at just $9 https://ghost.org/pricing/. Read more at https://ghost.org.

Software Included

Package Version License
Ghost latest MIT
Nginx 1.18.0 Custom
MySQL server 8.0.29 GPL 2 with modifications
Node.js 18.x Custom

Creating an App using the Control Panel

Click the Deploy to DigitalOcean button to create a Droplet based on this 1-Click App. If you aren’t logged in, this link will prompt you to log in with your DigitalOcean account.

Deploy to DO

Creating an App using the API

In addition to creating a Droplet from the Ghost 1-Click App using the control panel, you can also use the DigitalOcean API. As an example, to create a 4GB Ghost Droplet in the SFO2 region, you can use the following curl command. You need to either save your API access token) to an environment variable or substitute it in the command below.

curl -X POST -H 'Content-Type: application/json' \
         -H 'Authorization: Bearer '$TOKEN'' -d \
        '{"name":"choose_a_name","region":"sfo2","size":"s-2vcpu-4gb","image": "ghost-20-04"}' \
        "https://api.digitalocean.com/v2/droplets"

Getting Started After Deploying Ghost

You’ll need a registered domain name to finish completing the Ghost setup. We recommend setting up an A record from the domain (e.g., example.com) to the server’s IP address.

After the Ghost One-Click Droplet is created and the domain and DNS records are set up, you’ll need to log into the Ghost Droplet to complete its setup. From a terminal on your local computer, connect to the Droplet as root. Make sure to substitute the IP address of the Droplet.

ssh root@use_your_droplet_ip

As soon as you log in, the Droplet will automatically make sure it’s running the most recent version of Ghost, and will prompt you to press ENTER to finalize the setup.

Ensuring Ghost-CLI is up-to-date…
…

Ghost will prompt you for two details:

Your domain
Add an A Record -> your_droplet_ip & ensure DNS has fully propagated
Or alternatively enter http://your_droplet_ip
Your email address (only used for SSL)
Press enter when you’re ready to get started!

Follow the installation prompts to configure Ghost.

As soon as you’re done, make sure to configure the admin user using the administrative interface at http://use_your_droplet_ip/ghost (making sure to substitute the Droplet’s IP address in the URL). Until you configure the admin user, anyone who discovers the site can configure the administrative user, take control of the Ghost site, and potentially take control of the Droplet.

Once the installation and setup is fully complete, you can access the new Ghost site by visiting the Droplet IP address in your browser.

To upgrade or maintain the Ghost install in future, you’ll always have to become the ghost-mgr user in order to have the correct permissions:

sudo -i -u ghost-mgr

After that, all tasks can be completed with the Ghost-CLI tool. Run ghost help for an overview of available commands, or check out the Ghost-CLI docs for full details.