Ghost is a free and open source blogging platform written in JavaScript and distributed under the MIT License, designed to simplify the process of online publishing for individual bloggers as well as online publications.

Installation

1. Install node js

Download | Node.js
Node.js® is a JavaScript runtime built on Chrome’s V8 JavaScript engine.

2. Install ghost cli: sudo npm install -g ghost-cli@latest

3. Create empty folder

4. cd to the empty folder

5. Initial ghost project ghost install local

6. ghost start

7. Access HTTP://localhost:2368 to expore your ghost blog

8. Access Admin Portal via HTTP://localhost:2368/ghost

Database

By Default Ghost blog use sqlite3 to storage blog.
We can change to "MySQL" (ghost blog support sqlite and MySQL only) by edit the setting in config.development.json

Run as a Service by NSSM

1. Install nssm

NSSM - the Non-Sucking Service Manager

2. Install service: nssm install <service name>

  • Path: C:\Users\<user>\AppData\Roaming\npm\ghost
  • Working Dir: <ghost project directory path>
  • Param: start --dir <ghost project directory path>

Using Proxy and Host via IIS

Using proxy to host ghost project inder IIS

1. Download and run Proxy

topnguyen/Goblin.ReserveProxy
Reverse Proxy by .NET Core. Contribute to topnguyen/Goblin.ReserveProxy development by creating an account on GitHub.

2. Edit appsettings.json to the defined host domain and destination localhost site, normally the ghost run under HTTP://localhost:2368

3. Edit ghost project: config.development.json to "production domain"