Ghost

- A publishing platform for professional bloggers

Ghost is an open source publishing platform which is beautifully designed, easy to use, and free for everyone. Start a blog with Ghost today and learn to blog! Ghost is a lightning-fast Node.js application with an Ember.js admin client and Handlebars.js themes.

Stable version: 14.2 (changelog)

This appliance includes all the standard features in TurnKey Core, and on top of that:

  • Ghost configurations:
    • Ghost installed from upstream source code to /opt/ghost

      Security note: Updates to Ghost may require supervision so they ARE NOT configured to install automatically. See below for updating Ghost.

    • Ghost process managed by pm2.
    • Includes Nginx (webserver); pre-configured to proxy Ghost.
  • SSL support out of the box.
  • Postfix MTA (bound to localhost) to allow sending of email (e.g., password recovery).
  • Webmin module for configuring Postfix.

Supervised Manual Ghost Update

Note: Check the Ghost docs to ensure that upgrading your current version to the latest is supported. Always ensure that you have a tested backup before proceeding with software updates.

Assuming that updating to the latest Ghost version is supported. update from the command line:

DIR=/opt/ghost
cd $DIR
su -c "pm2 stop ghost" node
rm -rf core
curl -LOk https://ghost.org/zip/ghost-latest.zip
unzip ghost-latest.zip -d ghost-temp
cd ghost-temp
cp -R core $DIR
cp index.js *.json *.md $DIR
# optional step - update default theme
cp -R content/themes/casper $DIR/content/themes
cd ..
rm -r ghost-temp
rm ghost-latest.zip
chown -R node:node $DIR
su -c "npm install --production" node
su -c "pm2 start ghost" node

Ghost does not have a security only newsletter so we recommend that you subcribe to the Ghost Blog to keep up to date.

Usage details & Logging in for Administration

No default passwords: For security reasons there are no default passwords. All passwords are set at system initialization time.

Ignore SSL browser warning: browsers don't like self-signed SSL certificates, but this is the only kind that can be generated automatically without paying a commercial Certificate Authority.

Web - point your browser at either:

  1. http://12.34.56.789/ - not encrypted so no browser warning
  2. https://12.34.56.789/ - encrypted with self-signed SSL certificate

Username for ghost:

Login as username admin

Username for database administration:

Login as MySQL username root at

  1. https://12.34.56.789:12322/ - Adminer database management web app
  2. MySQL command line tool:
    $ mysql --user root --password
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql>
    

Username for OS system administration:

Login as root except on AWS marketplace which uses username admin.

  1. Point your browser to:
  2. Login with SSH client:
    ssh root@12.34.56.789
    

    Special case for AWS marketplace:

    ssh admin@12.34.56.789
    

* Replace 12.34.56.789 with a valid IP or hostname.