diff --git a/docker-compose.yml b/docker-compose.yml --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,6 +4,11 @@ build: context: ./docker/coturn/ container_name: kolab-coturn + healthcheck: + interval: 10s + test: "kill -0 $$(cat /tmp/turnserver.pid)" + timeout: 5s + retries: 30 environment: - TURN_PUBLIC_IP=${COTURN_PUBLIC_IP} - TURN_LISTEN_PORT=3478 @@ -70,6 +75,11 @@ context: ./docker/nginx/ args: APP_WEBSITE_DOMAIN: ${APP_WEBSITE_DOMAIN:?err} + healthcheck: + interval: 10s + test: ["CMD-SHELL", "curl -so /dev/null http://localhost/ || exit 1"] + timeout: 5s + retries: 30 container_name: kolab-nginx hostname: nginx.hosted.com image: kolab-nginx @@ -105,6 +115,11 @@ context: ./docker/proxy/ args: APP_WEBSITE_DOMAIN: ${APP_WEBSITE_DOMAIN:?err} + healthcheck: + interval: 10s + test: ["CMD-SHELL", "curl -so /dev/null http://localhost/ || exit 1"] + timeout: 5s + retries: 30 container_name: kolab-proxy hostname: ${APP_WEBSITE_DOMAIN:?err} image: kolab-proxy @@ -122,6 +137,11 @@ redis: build: context: ./docker/redis/ + healthcheck: + interval: 10s + test: "redis-cli ping || exit 1" + timeout: 5s + retries: 30 container_name: kolab-redis hostname: redis image: redis @@ -154,6 +174,11 @@ meet: build: context: ./docker/meet/ + healthcheck: + interval: 10s + test: "curl --insecure -H 'X-AUTH-TOKEN: ${MEET_SERVER_TOKEN}' --fail https://localhost:12443/meetmedia/api/health || exit 1" + timeout: 5s + retries: 30 environment: - WEBRTC_LISTEN_IP=${MEET_WEBRTC_LISTEN_IP:?err} - PUBLIC_DOMAIN=${MEET_PUBLIC_DOMAIN:?err}