DEV Community

Cover image for Guide: Deploy Ghost with Docker on Sliplane
Lukas Mauser
Lukas Mauser Subscriber

Posted on • Originally published at sliplane.io

3 2 2 2 2

Guide: Deploy Ghost with Docker on Sliplane

Ghost is an open source blogging and newsletter platform designed for professional publishers. In this guide, I want to show you, how you can spin up and deploy your own instance of Ghost using Docker and Sliplane.

You can find a detailed guide on how to use ghost in the official docs: https://ghost.org/help/manual/

Getting started

  • Login at Sliplane using your GitHub account.
  • Click on "Create Project", choose a name for the project and click "Create Project".

Spin Up a MySQL Database

  • Click on the new project and then click on "Deploy Service".

  • If you don't have a server yet, click on "Create Server". Select a location, instance type and name for your server and click on "Create Paid Server". The Base server type is selected by default and it should be plenty strong to run your Ghost app. You can always upgrade your server later, if you need more computing power.

  • After the server has been created, it will show up in the servers list. Click on your server, in order to continue.

  • In the pre configured images section, click on the MySQL preset card.

  • For additional security, scroll down to "Expose Service" and switch off the "Public" toggle.

  • Optionally, you can rename the database service and customize the other settings as well, but we will stick with the defaults.

  • Click "Deploy" and wait for the deploy to finish

Spin Up Ghost

  • After your database has been deployed, navigate to the project where you created it and click "Deploy Service" again

  • Select the server, where the database is running on

  • Click on "Registry" as the deploy source

  • In the "Image URL" text field up top, type "Ghost" and choose the official Ghost image from the search results and the version that you want to deploy

  • Add the following environment variables, but make sure to replace placeholders in all caps with your actual config. All database connection settings can be found on the settings page of the database service, that you just deployed earlier.
database__client=mysql
database__connection__database=YOUR_DATABASE_NAME # replace
database__connection__host=INTERNAL_DB_HOSTNAME # replace
database__connection__password=DB_ROOT_PASSWORD # replace
database__connection__user=root
url=https://$SLIPLANE_DOMAIN # $SLIPLANE_DOMAIN is a variable that will be populated automatically. You can replace this with a custom domain later, if you plan to add one
Enter fullscreen mode Exit fullscreen mode
  • Add a new Volume, give it a name of your choice and use /var/lib/ghost/content as the mount path

  • Click "Deploy" and wait for the deploy to finish.

After your deploy is done, you can access Ghost through the public domain that will be displayed in your dashboard.

That's already it!

Build gen AI apps that run anywhere with MongoDB Atlas

Build gen AI apps that run anywhere with MongoDB Atlas

MongoDB Atlas bundles vector search and a flexible document model so developers can build, scale, and run gen AI apps without juggling multiple databases. From LLM to semantic search, Atlas streamlines AI architecture. Start free today.

Start Free

Top comments (2)

Collapse
 
code42cate profile image
Jonas Scholz

👻

Some comments may only be visible to logged-in visitors. Sign in to view all comments.

Gen AI apps are built with MongoDB Atlas

Gen AI apps are built with MongoDB Atlas

MongoDB Atlas is the developer-friendly database for building, scaling, and running gen AI & LLM apps—no separate vector DB needed. Enjoy native vector search, 115+ regions, and flexible document modeling. Build AI faster, all in one place.

Start Free

👋 Kindness is contagious

Dive into this thoughtful piece, beloved in the supportive DEV Community. Coders of every background are invited to share and elevate our collective know-how.

A sincere "thank you" can brighten someone's day—leave your appreciation below!

On DEV, sharing knowledge smooths our journey and tightens our community bonds. Enjoyed this? A quick thank you to the author is hugely appreciated.

Okay