What is it for?
Ghost is an elegant, fast blogging platform built for writing. Newsletter and paid subscriptions are built in: ideal for an independent publication.
Who is it for?
People who want to write and publish without fighting plugins.
After installing
- Create the administrator account at https://journal.mydomain.com/ghost
- To send the newsletter, set up an email service (see the documentation).
The docker-compose
Example behind Traefik. To adapt it (Nginx Proxy Manager, local port…) with a line-by-line explanation, use the generator (in French).
# docker-compose.yml : Ghost
services:
ghost:
image: ghost:6-alpine
container_name: ghost
restart: unless-stopped
depends_on:
- db
environment:
url: https://journal.mydomain.com
NODE_ENV: production
database__client: mysql
database__connection__host: db
database__connection__user: ghost
database__connection__password: "${DB_PASSWORD}"
database__connection__database: ghost
TZ: Europe/Paris
volumes:
- ./content:/var/lib/ghost/content
networks:
- traefik
- default
labels:
- traefik.enable=true
- traefik.http.routers.ghost.rule=Host(`journal.mydomain.com`)
- traefik.http.routers.ghost.entrypoints=websecure
- traefik.http.routers.ghost.tls.certresolver=letsencrypt
- traefik.http.services.ghost.loadbalancer.server.port=2368
- traefik.docker.network=traefik
db:
image: mysql:8.4
container_name: ghost-db
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: "${DB_ROOT_PASSWORD}"
MYSQL_DATABASE: ghost
MYSQL_USER: ghost
MYSQL_PASSWORD: "${DB_PASSWORD}"
volumes:
- ./db:/var/lib/mysql
networks:
traefik:
external: true