Merge pull request #5967 from Doozy134/fix/curl-hostname
fix: change internal urls for containers using curl on alpine
This commit is contained in:
		
						commit
						ab2abda8cc
					
				| @ -123,7 +123,7 @@ done | ||||
| log_f "Database OK" | ||||
| 
 | ||||
| log_f "Waiting for Nginx..." | ||||
| until $(curl --output /dev/null --silent --head --fail http://nginx:8081); do | ||||
| until $(curl --output /dev/null --silent --head --fail http://nginx.${COMPOSE_PROJECT_NAME}_mailcow-network:8081); do | ||||
|   sleep 2 | ||||
| done | ||||
| log_f "Nginx OK" | ||||
| @ -137,7 +137,7 @@ log_f "Resolver OK" | ||||
| # Waiting for domain table | ||||
| log_f "Waiting for domain table..." | ||||
| while [[ -z ${DOMAIN_TABLE} ]]; do | ||||
|   curl --silent http://nginx/ >/dev/null 2>&1 | ||||
|   curl --silent http://nginx.${COMPOSE_PROJECT_NAME}_mailcow-network/ >/dev/null 2>&1 | ||||
|   DOMAIN_TABLE=$(mysql --socket=/var/run/mysqld/mysqld.sock -u ${DBUSER} -p${DBPASS} ${DBNAME} -e "SHOW TABLES LIKE 'domain'" -Bs) | ||||
|   [[ -z ${DOMAIN_TABLE} ]] && sleep 10 | ||||
| done | ||||
|  | ||||
| @ -2,32 +2,32 @@ | ||||
| 
 | ||||
| # Reading container IDs | ||||
| # Wrapping as array to ensure trimmed content when calling $NGINX etc. | ||||
| NGINX=($(curl --silent --insecure https://dockerapi/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"nginx-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" | tr "\n" " ")) | ||||
| DOVECOT=($(curl --silent --insecure https://dockerapi/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"dovecot-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" | tr "\n" " ")) | ||||
| POSTFIX=($(curl --silent --insecure https://dockerapi/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"postfix-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" | tr "\n" " ")) | ||||
| NGINX=($(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"nginx-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" | tr "\n" " ")) | ||||
| DOVECOT=($(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"dovecot-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" | tr "\n" " ")) | ||||
| POSTFIX=($(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"postfix-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" | tr "\n" " ")) | ||||
| 
 | ||||
| reload_nginx(){ | ||||
|   echo "Reloading Nginx..." | ||||
|   NGINX_RELOAD_RET=$(curl -X POST --insecure https://dockerapi/containers/${NGINX}/exec -d '{"cmd":"reload", "task":"nginx"}' --silent -H 'Content-type: application/json' | jq -r .type) | ||||
|   NGINX_RELOAD_RET=$(curl -X POST --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${NGINX}/exec -d '{"cmd":"reload", "task":"nginx"}' --silent -H 'Content-type: application/json' | jq -r .type) | ||||
|   [[ ${NGINX_RELOAD_RET} != 'success' ]] && { echo "Could not reload Nginx, restarting container..."; restart_container ${NGINX} ; } | ||||
| } | ||||
| 
 | ||||
| reload_dovecot(){ | ||||
|   echo "Reloading Dovecot..." | ||||
|   DOVECOT_RELOAD_RET=$(curl -X POST --insecure https://dockerapi/containers/${DOVECOT}/exec -d '{"cmd":"reload", "task":"dovecot"}' --silent -H 'Content-type: application/json' | jq -r .type) | ||||
|   DOVECOT_RELOAD_RET=$(curl -X POST --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${DOVECOT}/exec -d '{"cmd":"reload", "task":"dovecot"}' --silent -H 'Content-type: application/json' | jq -r .type) | ||||
|   [[ ${DOVECOT_RELOAD_RET} != 'success' ]] && { echo "Could not reload Dovecot, restarting container..."; restart_container ${DOVECOT} ; } | ||||
| } | ||||
| 
 | ||||
| reload_postfix(){ | ||||
|   echo "Reloading Postfix..." | ||||
|   POSTFIX_RELOAD_RET=$(curl -X POST --insecure https://dockerapi/containers/${POSTFIX}/exec -d '{"cmd":"reload", "task":"postfix"}' --silent -H 'Content-type: application/json' | jq -r .type) | ||||
|   POSTFIX_RELOAD_RET=$(curl -X POST --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${POSTFIX}/exec -d '{"cmd":"reload", "task":"postfix"}' --silent -H 'Content-type: application/json' | jq -r .type) | ||||
|   [[ ${POSTFIX_RELOAD_RET} != 'success' ]] && { echo "Could not reload Postfix, restarting container..."; restart_container ${POSTFIX} ; } | ||||
| } | ||||
| 
 | ||||
| restart_container(){ | ||||
|   for container in $*; do | ||||
|     echo "Restarting ${container}..." | ||||
|     C_REST_OUT=$(curl -X POST --insecure https://dockerapi/containers/${container}/restart --silent | jq -r '.msg') | ||||
|     C_REST_OUT=$(curl -X POST --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${container}/restart --silent | jq -r '.msg') | ||||
|     echo "${C_REST_OUT}" | ||||
|   done | ||||
| } | ||||
|  | ||||
| @ -3,8 +3,8 @@ FILE=/tmp/mail$$ | ||||
| cat > $FILE | ||||
| trap "/bin/rm -f $FILE" 0 1 2 3 13 15 | ||||
| 
 | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 11" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd/fuzzydel | ||||
| cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd/learnham | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 13" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd/fuzzyadd | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 11" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd.${COMPOSE_PROJECT_NAME}_mailcow-network/fuzzydel | ||||
| cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd.${COMPOSE_PROJECT_NAME}_mailcow-network/learnham | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 13" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd.${COMPOSE_PROJECT_NAME}_mailcow-network/fuzzyadd | ||||
| 
 | ||||
| exit 0 | ||||
|  | ||||
| @ -3,8 +3,8 @@ FILE=/tmp/mail$$ | ||||
| cat > $FILE | ||||
| trap "/bin/rm -f $FILE" 0 1 2 3 13 15 | ||||
| 
 | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 13" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd/fuzzydel | ||||
| cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd/learnspam | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 11" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd/fuzzyadd | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 13" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd.${COMPOSE_PROJECT_NAME}_mailcow-network/fuzzydel | ||||
| cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd.${COMPOSE_PROJECT_NAME}_mailcow-network/learnspam | ||||
| cat ${FILE} | /usr/bin/curl -H "Flag: 11" -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd.${COMPOSE_PROJECT_NAME}_mailcow-network/fuzzyadd | ||||
| 
 | ||||
| exit 0 | ||||
|  | ||||
| @ -21,11 +21,11 @@ sed -i -e 's/\([^\\]\)\$\([^\/]\)/\1\\$\2/g' /etc/rspamd/custom/sa-rules | ||||
| 
 | ||||
| if [[ "$(cat /etc/rspamd/custom/sa-rules | md5sum | cut -d' ' -f1)" != "${HASH_SA_RULES}" ]]; then | ||||
|   CONTAINER_NAME=rspamd-mailcow | ||||
|   CONTAINER_ID=$(curl --silent --insecure https://dockerapi/containers/json | \ | ||||
|   CONTAINER_ID=$(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | \ | ||||
|     jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | \ | ||||
|     jq -rc "select( .name | tostring | contains(\"${CONTAINER_NAME}\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id") | ||||
|   if [[ ! -z ${CONTAINER_ID} ]]; then | ||||
|     curl --silent --insecure -XPOST --connect-timeout 15 --max-time 120 https://dockerapi/containers/${CONTAINER_ID}/restart | ||||
|     curl --silent --insecure -XPOST --connect-timeout 15 --max-time 120 https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${CONTAINER_ID}/restart | ||||
|   fi | ||||
| fi | ||||
| 
 | ||||
|  | ||||
| @ -23,7 +23,7 @@ done | ||||
| # Check mysql_upgrade (master and slave) | ||||
| CONTAINER_ID= | ||||
| until [[ ! -z "${CONTAINER_ID}" ]] && [[ "${CONTAINER_ID}" =~ ^[[:alnum:]]*$ ]]; do | ||||
|   CONTAINER_ID=$(curl --silent --insecure https://dockerapi/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" 2> /dev/null | jq -rc "select( .name | tostring | contains(\"mysql-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" 2> /dev/null) | ||||
|   CONTAINER_ID=$(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" 2> /dev/null | jq -rc "select( .name | tostring | contains(\"mysql-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" 2> /dev/null) | ||||
|   echo "Could not get mysql-mailcow container id... trying again" | ||||
|   sleep 2 | ||||
| done | ||||
| @ -35,7 +35,7 @@ until [[ ${SQL_UPGRADE_STATUS} == 'success' ]]; do | ||||
|     echo "Tried to upgrade MySQL and failed, giving up after ${SQL_LOOP_C} retries and starting container (oops, not good)" | ||||
|     break | ||||
|   fi | ||||
|   SQL_FULL_UPGRADE_RETURN=$(curl --silent --insecure -XPOST https://dockerapi/containers/${CONTAINER_ID}/exec -d '{"cmd":"system", "task":"mysql_upgrade"}' --silent -H 'Content-type: application/json') | ||||
|   SQL_FULL_UPGRADE_RETURN=$(curl --silent --insecure -XPOST https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${CONTAINER_ID}/exec -d '{"cmd":"system", "task":"mysql_upgrade"}' --silent -H 'Content-type: application/json') | ||||
|   SQL_UPGRADE_STATUS=$(echo ${SQL_FULL_UPGRADE_RETURN} | jq -r .type) | ||||
|   SQL_LOOP_C=$((SQL_LOOP_C+1)) | ||||
|   echo "SQL upgrade iteration #${SQL_LOOP_C}" | ||||
| @ -60,12 +60,12 @@ done | ||||
| 
 | ||||
| # doing post-installation stuff, if SQL was upgraded (master and slave) | ||||
| if [ ${SQL_CHANGED} -eq 1 ]; then | ||||
|   POSTFIX=$(curl --silent --insecure https://dockerapi/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" 2> /dev/null | jq -rc "select( .name | tostring | contains(\"postfix-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" 2> /dev/null) | ||||
|   POSTFIX=$(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" 2> /dev/null | jq -rc "select( .name | tostring | contains(\"postfix-mailcow\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id" 2> /dev/null) | ||||
|   if [[ -z "${POSTFIX}" ]] || ! [[ "${POSTFIX}" =~ ^[[:alnum:]]*$ ]]; then | ||||
|     echo "Could not determine Postfix container ID, skipping Postfix restart." | ||||
|   else | ||||
|     echo "Restarting Postfix" | ||||
|     curl -X POST --silent --insecure https://dockerapi/containers/${POSTFIX}/restart | jq -r '.msg' | ||||
|     curl -X POST --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${POSTFIX}/restart | jq -r '.msg' | ||||
|     echo "Sleeping 5 seconds..." | ||||
|     sleep 5 | ||||
|   fi | ||||
| @ -74,7 +74,7 @@ fi | ||||
| # Check mysql tz import (master and slave) | ||||
| TZ_CHECK=$(mysql --socket=/var/run/mysqld/mysqld.sock -u ${DBUSER} -p${DBPASS} ${DBNAME} -e "SELECT CONVERT_TZ('2019-11-02 23:33:00','Europe/Berlin','UTC') AS time;" -BN 2> /dev/null) | ||||
| if [[ -z ${TZ_CHECK} ]] || [[ "${TZ_CHECK}" == "NULL" ]]; then | ||||
|   SQL_FULL_TZINFO_IMPORT_RETURN=$(curl --silent --insecure -XPOST https://dockerapi/containers/${CONTAINER_ID}/exec -d '{"cmd":"system", "task":"mysql_tzinfo_to_sql"}' --silent -H 'Content-type: application/json') | ||||
|   SQL_FULL_TZINFO_IMPORT_RETURN=$(curl --silent --insecure -XPOST https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${CONTAINER_ID}/exec -d '{"cmd":"system", "task":"mysql_tzinfo_to_sql"}' --silent -H 'Content-type: application/json') | ||||
|   echo "MySQL mysql_tzinfo_to_sql - debug output:" | ||||
|   echo ${SQL_FULL_TZINFO_IMPORT_RETURN} | ||||
| fi | ||||
|  | ||||
| @ -191,12 +191,12 @@ get_container_ip() { | ||||
|     else | ||||
|       sleep 0.5 | ||||
|       # get long container id for exact match | ||||
|       CONTAINER_ID=($(curl --silent --insecure https://dockerapi/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring == \"${1}\") | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id")) | ||||
|       CONTAINER_ID=($(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring == \"${1}\") | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id")) | ||||
|       # returned id can have multiple elements (if scaled), shuffle for random test | ||||
|       CONTAINER_ID=($(printf "%s\n" "${CONTAINER_ID[@]}" | shuf)) | ||||
|       if [[ ! -z ${CONTAINER_ID} ]]; then | ||||
|         for matched_container in "${CONTAINER_ID[@]}"; do | ||||
|           CONTAINER_IPS=($(curl --silent --insecure https://dockerapi/containers/${matched_container}/json | jq -r '.NetworkSettings.Networks[].IPAddress')) | ||||
|           CONTAINER_IPS=($(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${matched_container}/json | jq -r '.NetworkSettings.Networks[].IPAddress')) | ||||
|           for ip_match in "${CONTAINER_IPS[@]}"; do | ||||
|             # grep will do nothing if one of these vars is empty | ||||
|             [[ -z ${ip_match} ]] && continue | ||||
| @ -716,7 +716,7 @@ rspamd_checks() { | ||||
| From: watchdog@localhost | ||||
| 
 | ||||
| Empty | ||||
| ' | usr/bin/curl --max-time 10 -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd/scan | jq -rc .default.required_score | sed 's/\..*//' ) | ||||
| ' | usr/bin/curl --max-time 10 -s --data-binary @- --unix-socket /var/lib/rspamd/rspamd.sock http://rspamd.${COMPOSE_PROJECT_NAME}_mailcow-network/scan | jq -rc .default.required_score | sed 's/\..*//' ) | ||||
|     if [[ ${SCORE} -ne 9999 ]]; then | ||||
|       echo "Rspamd settings check failed, score returned: ${SCORE}" 2>> /tmp/rspamd-mailcow 1>&2 | ||||
|       err_count=$(( ${err_count} + 1)) | ||||
| @ -1095,12 +1095,12 @@ while true; do | ||||
|   elif [[ ${com_pipe_answer} =~ .+-mailcow ]]; then | ||||
|     kill -STOP ${BACKGROUND_TASKS[*]} | ||||
|     sleep 10 | ||||
|     CONTAINER_ID=$(curl --silent --insecure https://dockerapi/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"${com_pipe_answer}\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id") | ||||
|     CONTAINER_ID=$(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/json | jq -r ".[] | {name: .Config.Labels[\"com.docker.compose.service\"], project: .Config.Labels[\"com.docker.compose.project\"], id: .Id}" | jq -rc "select( .name | tostring | contains(\"${com_pipe_answer}\")) | select( .project | tostring | contains(\"${COMPOSE_PROJECT_NAME,,}\")) | .id") | ||||
|     if [[ ! -z ${CONTAINER_ID} ]]; then | ||||
|       if [[ "${com_pipe_answer}" == "php-fpm-mailcow" ]]; then | ||||
|         HAS_INITDB=$(curl --silent --insecure -XPOST https://dockerapi/containers/${CONTAINER_ID}/top | jq '.msg.Processes[] | contains(["php -c /usr/local/etc/php -f /web/inc/init_db.inc.php"])' | grep true) | ||||
|         HAS_INITDB=$(curl --silent --insecure -XPOST https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${CONTAINER_ID}/top | jq '.msg.Processes[] | contains(["php -c /usr/local/etc/php -f /web/inc/init_db.inc.php"])' | grep true) | ||||
|       fi | ||||
|       S_RUNNING=$(($(date +%s) - $(curl --silent --insecure https://dockerapi/containers/${CONTAINER_ID}/json | jq .State.StartedAt | xargs -n1 date +%s -d))) | ||||
|       S_RUNNING=$(($(date +%s) - $(curl --silent --insecure https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${CONTAINER_ID}/json | jq .State.StartedAt | xargs -n1 date +%s -d))) | ||||
|       if [ ${S_RUNNING} -lt 360 ]; then | ||||
|         log_msg "Container is running for less than 360 seconds, skipping action..." | ||||
|       elif [[ ! -z ${HAS_INITDB} ]]; then | ||||
| @ -1108,7 +1108,7 @@ while true; do | ||||
|         sleep 60 | ||||
|       else | ||||
|         log_msg "Sending restart command to ${CONTAINER_ID}..." | ||||
|         curl --silent --insecure -XPOST https://dockerapi/containers/${CONTAINER_ID}/restart | ||||
|         curl --silent --insecure -XPOST https://dockerapi.${COMPOSE_PROJECT_NAME}_mailcow-network/containers/${CONTAINER_ID}/restart | ||||
|         notify_error "${com_pipe_answer}" | ||||
|         log_msg "Wait for restarted container to settle and continue watching..." | ||||
|         sleep 35 | ||||
|  | ||||
| @ -110,7 +110,7 @@ services: | ||||
|             - rspamd | ||||
| 
 | ||||
|     php-fpm-mailcow: | ||||
|       image: mailcow/phpfpm:1.87 | ||||
|       image: mailcow/phpfpm:1.88 | ||||
|       command: "php-fpm -d date.timezone=${TZ} -d expose_php=0" | ||||
|       depends_on: | ||||
|         - redis-mailcow | ||||
| @ -405,7 +405,7 @@ services: | ||||
|           condition: service_started | ||||
|         unbound-mailcow: | ||||
|           condition: service_healthy | ||||
|       image: mailcow/acme:1.88 | ||||
|       image: mailcow/acme:1.89 | ||||
|       dns: | ||||
|         - ${IPV4_NETWORK:-172.22.1}.254 | ||||
|       environment: | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Niklas Meyer
						Niklas Meyer