# name_prefix: kopano, see COMPOSE_PROJECT_NAME in .env services: server: build: ./core image: baloan/core depends_on: - mysql ports: - 236:236 volumes: - ./etc-zntrl/kopano:/etc/kopano:ro - attachments:/var/lib/kopano/attachments command: /usr/sbin/kopano-server search: build: ./core image: baloan/core depends_on: - server volumes: - ./etc-zntrl/kopano:/etc/kopano:ro - search:/var/lib/kopano/search command: /usr/sbin/kopano-search spooler: build: ./core image: baloan/core depends_on: - server volumes: - ./etc-zntrl/kopano:/etc/kopano:ro command: /usr/sbin/kopano-spooler dagent: build: ./core image: baloan/core volumes: - ./etc-zntrl/kopano:/etc/kopano:ro depends_on: - server command: /usr/sbin/kopano-dagent -l mysql: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} volumes: - database:/var/lib/mysql - ./mysql/etc/mysql:/etc/mysql:ro - ./mysql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d ports: - 3307:3306 webapp: build: ./webapp image: baloan/webapp labels: - traefik.enable=true - traefik.http.routers.webapp.rule=Host(`$MAIL_DOMAIN`) && PathPrefix(`/webapp`) - traefik.http.routers.webapp.tls=true - traefik.http.routers.webapp.tls.certResolver=default volumes: - ./etc-zntrl/kopano:/etc/kopano:ro ports: - 8080:80 depends_on: - server networks: - default - traefik z-push: build: ./z-push image: baloan/z-push labels: - traefik.enable=true - traefik.http.routers.webapp.rule=Host(`$MAIL_DOMAIN`) && PathPrefix(`/Microsoft-Server-ActiveSync`) - traefik.http.routers.webapp.tls=true - traefik.http.routers.webapp.tls.certResolver=default volumes: - z-push:/var/lib/z-push - ./etc-zntrl/z-push:/etc/z-push:ro ports: - 8081:80 depends_on: - server networks: - default - traefik postfix: build: ./postfix tty: true image: baloan/postfix ports: - 8025:25 volumes: - spool:/var/spool/postfix spampd: build: ./spampd tty: true image: baloan/spampd volumes: - spamassassin:/var/lib/spamassassin networks: traefik: external: true volumes: database: attachments: search: z-push: spool: spamassassin: