#!/bin/sh # Only start container if nextcloud is accessible while ! nc -z "$NEXTCLOUD_HOST" 9001; do echo "Waiting for Nextcloud to start..." sleep 5 done set -x IPv4_ADDRESS_NC="$(dig nextcloud-aio-nextcloud IN A +short +search | grep '^[0-9.]\+$' | sort | head -n1)" HAPROXYFILE="$(sed "s|NC_IPV4_PLACEHOLDER|$IPv4_ADDRESS_NC|" /haproxy.cfg)" echo "$HAPROXYFILE" > /tmp/haproxy.cfg IPv6_ADDRESS_NC="$(dig nextcloud-aio-nextcloud AAAA +short +search | grep '^[0-9a-f:]\+$' | sort | head -n1)" if [ -n "$IPv6_ADDRESS_NC" ]; then HAPROXYFILE="$(sed "s|NC_IPV6_PLACEHOLDER|$IPv6_ADDRESS_NC|" /tmp/haproxy.cfg)" else HAPROXYFILE="$(sed "s# || { src NC_IPV6_PLACEHOLDER }##g" /tmp/haproxy.cfg)" fi echo "$HAPROXYFILE" > /tmp/haproxy.cfg # Apply AIO_LOG_LEVEL as HAProxy global log directive case "${AIO_LOG_LEVEL:-warning}" in debug) HAPROXY_LOG_LEVEL="debug" ;; info) HAPROXY_LOG_LEVEL="info" ;; warning) HAPROXY_LOG_LEVEL="notice" ;; error) HAPROXY_LOG_LEVEL="err" ;; *) HAPROXY_LOG_LEVEL="notice" ;; esac HAPROXYFILE="$(sed "s|# HAPROXY_LOG_PLACEHOLDER|log stdout format raw local0 $HAPROXY_LOG_LEVEL|" /tmp/haproxy.cfg)" echo "$HAPROXYFILE" > /tmp/haproxy.cfg set +x haproxy -f /tmp/haproxy.cfg -db