# Ghost - Professzionális blog és hírlevél platform # Domain: ${SUBDOMAIN}.${DOMAIN} # Database: None (file-based) # RAM: ~150M (mem_limit: 512M) | Pi-compatible: No # # Environment variables: # DOMAIN - Your domain (e.g., demo-felhom.eu) services: ghost: image: ghost:6.19.2-alpine container_name: ghost restart: unless-stopped environment: - TZ=Europe/Budapest - NODE_ENV=production - url=https://${SUBDOMAIN}.${DOMAIN} - database__client=sqlite3 - database__connection__filename=content/data/ghost.db volumes: - ghost_content:/var/lib/ghost/content networks: - traefik-public deploy: resources: limits: memory: 512M healthcheck: test: ["CMD", "node", "-e", "require('http').get('http://localhost:2368/',r=>{process.exit(r.statusCode<400?0:1)}).on('error',()=>process.exit(1))"] interval: 30s timeout: 5s retries: 3 start_period: 30s labels: - "traefik.enable=true" - "traefik.http.routers.ghost.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)" - "traefik.http.routers.ghost.entrypoints=websecure" - "traefik.http.routers.ghost.tls=true" - "traefik.http.routers.ghost.tls.certresolver=letsencrypt" - "traefik.http.services.ghost.loadbalancer.server.port=2368" volumes: ghost_content: networks: traefik-public: external: true