services: api: image: ${LANQIN_API_IMAGE:-ghcr.io/lanqin996/lanqin-email-api:latest} env_file: .env volumes: - ./data:/data:ro - ./mail:/var/mail/vhosts:ro depends_on: - dovecot - postfix restart: unless-stopped web: image: ${LANQIN_WEB_IMAGE:-ghcr.io/lanqin996/lanqin-email-web:latest} restart: unless-stopped nginx: image: nginx:1.27-alpine volumes: - ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro ports: - "80:80" - "443:443" depends_on: - api - web restart: unless-stopped postfix: image: ${LANQIN_POSTFIX_IMAGE:-ghcr.io/lanqin996/lanqin-email-postfix:latest} env_file: .env volumes: - ./data:/data - ./mail:/var/mail/vhosts ports: - "25:25" - "587:587" depends_on: - dovecot - rspamd restart: unless-stopped dovecot: image: ${LANQIN_DOVECOT_IMAGE:-ghcr.io/lanqin996/lanqin-email-dovecot:latest} env_file: .env volumes: - ./data:/data - ./mail:/var/mail/vhosts ports: - "993:993" restart: unless-stopped rspamd: image: ${LANQIN_RSPAMD_IMAGE:-ghcr.io/lanqin996/lanqin-email-rspamd:latest} env_file: .env volumes: - ./data:/data:ro - ./dkim:/var/lib/rspamd/dkim restart: unless-stopped