Ghost Blog used on website which includes the Cloudinary Storage Plugin.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Build Status

Ghost Dockerfile

Base Docker Image


Building yourself

git clone
cd docker-ghostblog-cloudinary
docker build -t mmornati/docker-ghostblog-cloudinary .

From DockerHub

docker pull mmornati/docker-ghostblog-cloudinary


docker run -d -p 80:2368 mmornati/docker-ghostblog-cloudinary

Customizing Ghost

docker run -d -p 80:2368 -e [ENVIRONMENT_VARIABLES] -v <override-dir>:/var/lib/ghost/content mmornati/docker-ghostblog-cloudinary

Environment variables are used to personalise your Ghost Blog configuration. Could be:

  • WEB_URL: the url used to expose your blog (default:
  • DB_CLIENT: database used to store blog data (default: sqlite3)
  • DB_SQLITE_PATH: sqlite data file path (default: $GHOST_CONTENT/data/ghost.db)
  • SERVER_HOST: hostname/ip used to expose the blog (default:
  • SERVER_PORT: port used by the server (default: 2638).
  • CLOUDINARY_URL: information to connect to your cloudinary account. You can retrieve it directly on cloudinary

NB: Knowing the ghostblog is run using a 'non root user' (ghost), you cannot start the nodejs process on a port less than 1024.

A complete running command line could be:

docker run -d -p 2368:2368 -e WEB_URL= -e SERVER_HOST= -e SERVER_PORT=4000 -e CLOUDINARY_URL=cloudinary://87237872387:aaaaaaaaaaaa@blog-mornati-net -v /opt/data:/var/lib/ghost/content mmornati/docker-ghostblog-cloudinary

Upgrade from previous version (< 1.16.2)

If you were using this container with previous version, since the 1.16.2 we aligned the folders used inside the Docker to the ones used by the Ghost official image, you maybe need to change your data mount point.

Before you had:

 ... -v /opt/data:/ghost-override

and you should have, in your /opt/data folder, a subfolder named content.

Starting from this version your mount point should change to:

 ... -v /opt/data/content:/var/lib/ghost/content

Upgrade to version 1.17.0

In the latest version ghost is installed with the production method, this changed the name of the database name used by default from ghost-local.db to ghost.db. This means to be anble to use the Docker image starting with version 1.17.0 you have to rename you database file:

mv ghost-local.db ghost.db

into the ghost content/database folder.