Ghost

Ghost is a popular content management system for blogs and other online publications.

Installation

To install a Ghost application follow our general instructions for adding applications and select "Ghost" as the application type in step 5.

When the installation is complete, the following files and directories will be present in the application directory:

  • start and stop scripts to control the operation of your application.
  • ghost: a directory containing your Ghost instance
  • node_modules: a directory containing the core Ghost software
  • README: basic info regarding the new application.

Post-Install Steps - IMPORTANT!

  1. Assign your Ghost application to a site in your dashboard and make a note of the site URL.

  2. SSH to the server as your app's shell user and run the following commands to configure the site URL, replacing https://domain/com with your site URL and myapp with your Ghost app's name:

    cd ~/apps/myapp/ghost
    ~/apps/myapp/node_modules/.bin/ghost config url https://domain.com
    ~/apps/myapp/node_modules/.bin/ghost restart
    
  3. Immediately visit your Ghost admin URL (for example https://domain.com/ghost/) to set up your initial admin user.

Running Ghost in production mode

Your Ghost app is initially configured to run in development mode which uses more memory and is a bit slower than production mode.

To run in production mode, SSH to the server as your app's shell user and run the following commands, replacing myapp with your Ghost app's name:

  1. Create your production config if it doesn't exist already:

    cd ~/apps/myapp/ghost
    cp config.development.json config.production.json
    
  2. Edit your app's start script to include NODE_ENV=production in the ghost command:

    #!/bin/bash
    NODE_ENV=production /home/you/apps/myapp/node_modules/.bin/ghost start -d /home/you/apps/myapp/ghost
    echo "Started Ghost for myapp."
    
  3. Restart the app:

    ~/apps/myapp/node_modules/.bin/ghost restart
    

You're done!

Installing modules for Ghost with npm

To install additional Javascript modules for your Ghost application please refer to our Node.js documentation: Installing modules with npm