mirror of
https://github.com/the-djmaze/snappymail.git
synced 2024-11-13 02:55:24 +08:00
24dbff999e
* Enhancement: Add Docker Hub image * Push to ghcr.io * Add all `org.opencontainers.image.xxx` labels using `--label` instead of `LABEL` * Change `php-fpm` to listen on `:9000` to expose prometheus metrics via `php-fpm_exporter` * Include `yarn.lock` to speed up builds * Reorder * Use correct sha for pr * Add logging before overriding values in config * Add `DEBUG=true` env var for verbose `entrypoint.sh` logs * Print php exception when snappymail fails to generate data directory and config file on the very first time * Log snappymail version * Fix COPY statement * Add .dockerignore * Add `USER` and `ENTRYPOINT` * Update `.dockerignore` * Add docker image test * Push only if image test succeeds * Log when startup is successful * Use plain `docker build` in `build_and_test.sh` * Fix test output
57 lines
1.1 KiB
YAML
57 lines
1.1 KiB
YAML
version: '2'
|
|
services:
|
|
snappymail:
|
|
image: leojonathanoh/snappymail:pr-1
|
|
ports:
|
|
- 8888:8888
|
|
environment:
|
|
- DEBUG=true
|
|
volumes:
|
|
- snappymail:/var/lib/snappymail
|
|
networks:
|
|
- default
|
|
- db-network
|
|
- redis-network
|
|
restart: unless-stopped
|
|
|
|
# This provides prometheus metrics for snappymail's php-fpm
|
|
php-fpm-exporter:
|
|
image: hipages/php-fpm_exporter:2.2.0
|
|
ports:
|
|
- 9253:9253
|
|
environment:
|
|
- PHP_FPM_SCRAPE_URI=tcp://snappymail:9000/status
|
|
networks:
|
|
- default
|
|
|
|
mysql:
|
|
image: mariadb:10
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD=root
|
|
- MYSQL_USER=snappymail
|
|
- MYSQL_PASSWORD=snappymail
|
|
- MYSQL_DATABASE=snappymail
|
|
volumes:
|
|
- mysql:/var/lib/mysql
|
|
networks:
|
|
- db-network
|
|
restart: unless-stopped
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
networks:
|
|
- redis-network
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
default:
|
|
db-network:
|
|
internal: true
|
|
redis-network:
|
|
internal: true
|
|
|
|
volumes:
|
|
mysql:
|
|
driver: local
|
|
snappymail:
|
|
driver: local
|