Docker config for the Ghost blogging platform, using nginx as the front-end web server.
Note: At present, this configuration only supports HTTP, and not HTTPS, and we have only built support for version 0.7.1 of Ghost.
Overview
This repo contains a biased Docker configuration for the current version of Ghost - the lightweight, clean, minimalistic, NodeJS-based blogging platform. This configuration is based on a combination of the official Docker configuration for Ghost as well as a modified version of this guide, but aims to be more configurable than both, and only runs the production version of Ghost.Note: At present, this configuration only supports HTTP, and not HTTPS, and we have only built support for version 0.7.1 of Ghost.
Architecture
A running container spawned from this configuration will contain the following components:- An instance of Ghost running at http://127.0.0.1:2368 within the container.
- An instance of nginx bound to 0.0.0.0:80 within the container. This nginx instance provides some local caching of the content served up by the Ghost instance.
- The Ghost
content
directory (which includes uploaded images, themes, etc.) exposed as a volume from/var/lib/ghost
within the container.
GHOST_STORAGE
environment variable below for details.Environment Variables
Once your Docker image is built, you can make use of the following environment variables to control how your Ghost instance runs.GHOST_HOST
: The base host that will be serving your blog, e.g.my-blog.com
. Default:localhost
.GHOST_STORAGE
: The storage mechanism to use for Ghost's content. At present, this can either besqlite3
ormysql
. Ifsqlite3
is chosen, the SQLite database will be stored in the exposed volume from the/var/lib/ghost
folder within the container. Ifmysql
is chosen, one must configure the MySQL database environment variables specified byGHOST_MYSQL_*
below. Default:sqlite3
.GHOST_MYSQL_HOST
: The host address of the MySQL server to use. Default:localhost
.GHOST_MYSQL_PORT
: The port to use to access the MySQL server. Default:3306
,GHOST_MYSQL_DATABASE
: The name of the MySQL database to use for your blog. Default:ghost
.GHOST_MYSQL_USER
: The MySQL user through which the database is to be accessed. Default:ghost
.GHOST_MYSQL_PASSWORD
: The password to use when accessing the MySQL database. Default:ghost
.
No comments:
Post a Comment