Skip to content

Guide · Open source

How to use Ghost: install, run locally and publish

Updated · written with AI from the project's own documentation and checked against our catalogue data

Ghost is a free, open-source publishing system for running a website, blog or newsletter. This guide explains what it is, how to install it with the Ghost CLI, and when a managed service is the better fit. By the end you will know the install commands from the project README and where to find the next steps.

GhostTryGhost/Ghost · ★ 55.7k · MIT

Quick start

  1. 1Install Node.js. Make sure Node.js is installed. The README does not state a required version, so check the official docs.
  2. 2Install the Ghost CLI. Run npm install ghost-cli -g in your terminal to install the CLI globally.
  3. 3Run a local install. Run ghost install local to get a local instance running, following the local install docs.
  4. 4Deploy on a server. For a live site, run ghost install on your server, which includes automatic SSL setup with LetsEncrypt.
  5. 5Read the docs for upgrades. Use the official documentation at docs.ghost.org for hosting guidance and upgrading Ghost.

What is Ghost and who is it for?

Ghost handles writing and publishing content, and the project README also describes memberships and subscriptions. It is built with Node.js and can be used as a self-hosted install or through the managed Ghost(Pro) service.

It suits writers and publishers who want their own blog or newsletter site, developers who want a Node.js-based headless CMS that serves content through an API, and teams that would rather pay for a managed service than run servers.

  • Good fit: running your own blog or newsletter site
  • Good fit: serving content to other apps through an API
  • Not a fit: a no-setup point-and-click site with no server work and no managed hosting
  • Not a fit: general-purpose website building unrelated to publishing

Prerequisites before you install Ghost

Ghost is installed with a package manager and needs Node.js. The provided README does not specify which Node.js version is required, so check the official documentation before you start.

The README's install path uses the command line, so you will need to be comfortable typing commands in a terminal.

  • Node.js installed (version not specified in the README)
  • Access to a terminal
  • npm, the package manager used in the install command

Install the Ghost CLI and run a local instance

The README recommends the Ghost CLI for running your own instance. Install it globally with npm first.

To run a local instance, add the local flag. The README says this gets Ghost running in under a minute. Local install steps are in the official docs at docs.ghost.org/install/local/.

  • Step 1: install the CLI globally
  • Step 2: run the local install from the folder where you want the instance
npm install ghost-cli -g ghost install local

Install Ghost on a server with SSL

On a server, run the full install without the local flag. The README says this includes automatic SSL setup using LetsEncrypt. The production install guide for Ubuntu is at docs.ghost.org/install/ubuntu/.

The README also points to the recommended hosting stack and the upgrade guide in the official documentation at docs.ghost.org/hosting/ and docs.ghost.org/update/.

ghost install

Build themes and use the Ghost API

The official documentation covers developing your own Ghost themes and working with the Ghost API. Themes are in the docs at docs.ghost.org/themes/, and API details are at docs.ghost.org/content-api/.

If you want to contribute to Ghost itself, start with the contributing guide at .github/CONTRIBUTING.md. To work on the monorepo, see docs/README.md.

  • Themes: docs.ghost.org/themes/
  • Content API: docs.ghost.org/content-api/
  • Contributing: .github/CONTRIBUTING.md

Choose between self-hosting and Ghost(Pro)

The README says the easiest route to a production instance is the managed Ghost(Pro) service. It describes a launch in about 2 minutes, with CDN, backups, security and maintenance handled for you. Ghost(Pro) is a paid service.

Self-hosting with the CLI gives you control over your own setup but means you run the server. Ghost is MIT licensed, so the software itself is free to use.

  • Self-host if you want control and are comfortable with servers
  • Choose Ghost(Pro) if you want someone else to run hosting

What people use it for

  • Running a personal blog on your own domain
  • Publishing a newsletter with memberships and subscriptions
  • Serving content from a Node.js app through the Ghost API
  • Building a custom theme for a publication

Frequently asked questions

Is Ghost free?

Ghost is released under the MIT license, and the README describes it as free and open source. Ghost(Pro) is a paid managed service, and the README says revenue from it goes to the Ghost Foundation.

How do I install Ghost?

Install the CLI with npm install ghost-cli -g. Then run ghost install local for a local instance, or ghost install on a server, which the README says includes automatic SSL with LetsEncrypt.

What do I need to run Ghost?

You need Node.js and a terminal. The README does not specify the Node.js version, so check the official documentation.

Is Ghost a headless CMS?

The README describes Ghost as a headless Node.js CMS that works with other tools, and it provides a content API for serving content.

Is Ghost easier than WordPress?

The README does not compare Ghost with WordPress. It says Ghost(Pro) is the simpler managed option, while self-hosting requires command-line use and server work.

Where can I get help with Ghost?

The README points to the Ghost forum at forum.ghost.org for community help. Ghost(Pro) customers also have 24/7 email support.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Ghost suits writers, publishers and developers who want an MIT-licensed, Node.js-based publishing system and are comfortable with the command line or want a managed service. If you want a point-and-click site with no server work and no interest in managed hosting, or you need a general-purpose website builder, pick a different tool.

Install options & downloads