Use the container gateway address as the SMTP host

The value 172.17.0.1 is the default gateway on the default Docker
network. However, when using this image with 'docker-compose', a
new network is created, which means that the IP address of the
gateway is different by definition. Because the network is created
at the same time as the containers, the IP address isn't available
when the YAML definition is created.

This approach replaces the static approach with a dynamic approach
executed at first container startup.
This commit is contained in:
Erik Huelsmann
2023-12-22 13:03:09 +01:00
parent d5661d029f
commit 5a1fd390f1
2 changed files with 10 additions and 3 deletions

View File

@@ -67,7 +67,6 @@ if [[ -n "$LSMB_HAVE_DEPRECATED" ]]; then
echo "!!! DEPRECATED \$SSMTP_* PARAMETERS WILL BE REMOVED in the 1.9 image!!!"
fi
if [[ ! -f ./local/conf/ledgersmb.yaml ]]; then
cat <<EOF >./local/conf/ledgersmb.yaml
paths:
@@ -105,6 +104,12 @@ EOF
if [[ -n "$LSMB_MAIL_SMTPHOST" ]]
then
if [[ "$LSMB_MAIL_SMTPHOST" == "__CONTAINER_GATEWAY__" ]]
then
LSMB_MAIL_SMTPHOST="$(ip route | awk '/default/ { print $3 }')"
export LSMB_MAIL_SMTPHOST
fi
cat <<EOF >./local/conf/ledgersmb.000.yaml
mail:
transport: