Levelrail
Skip to content

Self-host Ghost with Docker ​

A fast, modern publishing platform for blogs and newsletters, with built-in memberships.

This page describes the Levelrail template for Ghost (Applications). It deploys the services below as one Docker Compose app on your own server.

Project site: https://ghost.org/docs/.

Recommended memory: about 512 MiB.

Services, ports and volumes ​

ServiceImageContainer portsVolumes
dbmysql:8.4none
ghost_db_data -> /var/lib/mysql
ghostghost:52368
ghost_data -> /var/lib/ghost/content

Environment variables ​

ServiceVariableValue
dbMYSQL_DATABASEPreset in the template
dbMYSQL_PASSWORDGenerated at deploy
dbMYSQL_ROOT_PASSWORDGenerated at deploy
dbMYSQL_USERPreset in the template
ghostdatabase__clientPreset in the template
ghostdatabase__connection__databasePreset in the template
ghostdatabase__connection__hostPreset in the template
ghostdatabase__connection__passwordGenerated at deploy
ghostdatabase__connection__userPreset in the template
ghosturlPreset in the template

Passwords and keys marked as generated are created for you when the app is deployed and stored as secrets. Values are not shown here.

Deploy Ghost with Levelrail ​

In the dashboard, open Apps, choose New app, then Browse templates, and select Ghost. Review the Compose body and deploy.

With the CLI:

levelrail-cli templates deploy ghost --name my-ghost

See Service template catalog for how templates work, and Getting started if you have not installed Levelrail yet.

More Applications templates ​

All templates are listed in the self-host gallery.

Released under the Apache 2.0 License.