diff --git a/README.md b/README.md index f5e4b515..5c045b78 100644 --- a/README.md +++ b/README.md @@ -220,6 +220,7 @@ variables (e.g. `URL_BASE_TRUSTED=https://mailtrain.domain.com (and more env-var | WWW_PROXY | use if Mailtrain is behind an http reverse proxy (default: false) | | WWW_SECRET | sets the secret for the express session (default: `$(pwgen -1)`) | | MONGO_HOST | sets mongo host (default: mongo) | +| WITH_REDIS | enables or disables redis (default: true) | | REDIS_HOST | sets redis host (default: redis) | | MYSQL_HOST | sets mysql host (default: mysql) | | MYSQL_DATABASE | sets mysql database (default: mailtrain) | @@ -234,6 +235,7 @@ variables (e.g. `URL_BASE_TRUSTED=https://mailtrain.domain.com (and more env-var | LDAP_FILTER | LDAP filter | | LDAP_BASEDN | LDAP base DN | | LDAP_UIDTAG | LDAP UID tag (e.g. uid/cn/username) | +| WITH_ZONE_MTA | enables or disables builtin Zone-MTA (default: true) | | POOL_NAME | sets builtin Zone-MTA pool name (default: os.hostname()) | If you don't want to modify the original `docker-compose.yml`, you can put your overrides to another file (e.g. `docker-compose.override.yml`) -- like the one below. diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index 1e815b89..b088ab88 100644 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -27,11 +27,13 @@ LDAP_MAILTAG=${LDAP_MAILTAG:-'mail'} LDAP_NAMETAG=${LDAP_NAMETAG:-'username'} LDAP_METHOD=${LDAP_METHOD:-'ldapjs'} MONGO_HOST=${MONGO_HOST:-'mongo'} +WITH_REDIS=${WITH_REDIS:-'true'} REDIS_HOST=${REDIS_HOST:-'redis'} MYSQL_HOST=${MYSQL_HOST:-'mysql'} MYSQL_DATABASE=${MYSQL_DATABASE:-'mailtrain'} MYSQL_USER=${MYSQL_USER:-'mailtrain'} MYSQL_PASSWORD=${MYSQL_PASSWORD:-'mailtrain'} +WITH_ZONE_MTA=${WITH_ZONE_MTA:-'true'} POOL_NAME=${POOL_NAME:-$(hostname)} # Warning for users that already rely on the MAILTRAIN_SETTING variable @@ -67,10 +69,11 @@ mysql: password: $MYSQL_PASSWORD redis: - enabled: true + enabled: $WITH_REDIS host: $REDIS_HOST builtinZoneMTA: + enabled: $WITH_ZONE_MTA log: level: warn mongo: mongodb://${MONGO_HOST}:27017/zone-mta @@ -125,11 +128,15 @@ fi echo 'Info: Waiting for MySQL Server' while ! nc -z $MYSQL_HOST 3306; do sleep 1; done -echo 'Info: Waiting for Redis Server' -while ! nc -z $REDIS_HOST 6379; do sleep 1; done +if [ "$WITH_REDIS" = "true" ]; then + echo 'Info: Waiting for Redis Server' + while ! nc -z $REDIS_HOST 6379; do sleep 1; done +fi -echo 'Info: Waiting for MongoDB Server' -while ! nc -z $MONGO_HOST 27017; do sleep 1; done +if [ "$WITH_ZONE_MTA" = "true" ]; then + echo 'Info: Waiting for MongoDB Server' + while ! nc -z $MONGO_HOST 27017; do sleep 1; done +fi cd server NODE_ENV=production node index.js