version: '3.8' services: ghost: image: ghost:5-alpine container_name: ghost-mcp-dev restart: unless-stopped ports: - "2368:2368" environment: # Basic Ghost configuration url: http://localhost:2368 NODE_ENV: development # Database configuration database__client: mysql database__connection__host: ghost-db database__connection__user: ${MYSQL_USER:-ghost} database__connection__password: ${MYSQL_PASSWORD:-ghostpassword} database__connection__database: ${MYSQL_DATABASE:-ghost_dev} database__connection__charset: utf8mb4 # Admin configuration for easier access admin__url: http://localhost:2368 # Logging configuration for development logging__level: info logging__transports: '["stdout"]' # Privacy settings for development privacy__useUpdateCheck: false privacy__useVersionNotifications: false # Mail configuration (optional - for testing) mail__transport: SMTP mail__from: ${GHOST_MAIL_FROM:-noreply@localhost} mail__options__service: ${MAIL_SERVICE:-} mail__options__auth__user: ${MAIL_USER:-} mail__options__auth__pass: ${MAIL_PASSWORD:-} volumes: - ghost_content:/var/lib/ghost/content depends_on: ghost-db: condition: service_healthy networks: - ghost-network ghost-db: image: mysql:8.0 container_name: ghost-db-dev restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-rootpassword} MYSQL_DATABASE: ${MYSQL_DATABASE:-ghost_dev} MYSQL_USER: ${MYSQL_USER:-ghost} MYSQL_PASSWORD: ${MYSQL_PASSWORD:-ghostpassword} MYSQL_CHARSET: utf8mb4 MYSQL_COLLATION: utf8mb4_general_ci volumes: - ghost_mysql:/var/lib/mysql networks: - ghost-network healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] timeout: 20s retries: 10 interval: 10s start_period: 40s # Optional: phpMyAdmin for database management during development phpmyadmin: image: phpmyadmin/phpmyadmin:latest container_name: ghost-phpmyadmin-dev restart: unless-stopped ports: - "8080:80" environment: PMA_HOST: ghost-db PMA_USER: ${MYSQL_USER:-ghost} PMA_PASSWORD: ${MYSQL_PASSWORD:-ghostpassword} MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-rootpassword} depends_on: - ghost-db networks: - ghost-network profiles: - debug volumes: ghost_content: name: ghost_mcp_content ghost_mysql: name: ghost_mcp_mysql networks: ghost-network: name: ghost-mcp-network driver: bridge