Skip to content

Commit df8c057

Browse files
committed
🐛 Fix entrypoint when AUTH_REGISTRIES is empty
1 parent 4e5e75e commit df8c057

File tree

1 file changed

+27
-24
lines changed

1 file changed

+27
-24
lines changed

entrypoint.sh

Lines changed: 27 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -34,32 +34,35 @@ export ALLDOMAINS=${ALLDOMAINS:1} # remove the first comma and export
3434
# Now handle the auth part.
3535
echo -n "" > /etc/nginx/docker.auth.map
3636

37-
# Ref: https://stackoverflow.com/a/47633817/219530
38-
AUTH_REGISTRIES_DELIMITER=${AUTH_REGISTRIES_DELIMITER:-" "}
39-
s=$AUTH_REGISTRIES$AUTH_REGISTRIES_DELIMITER
40-
auth_array=();
41-
while [[ $s ]]; do
42-
auth_array+=( "${s%%"$AUTH_REGISTRIES_DELIMITER"*}" );
43-
s=${s#*"$AUTH_REGISTRIES_DELIMITER"};
44-
done
45-
46-
AUTH_REGISTRY_DELIMITER=${AUTH_REGISTRY_DELIMITER:-":"}
47-
48-
for ONEREGISTRY in "${auth_array[@]}"; do
49-
s=$ONEREGISTRY$AUTH_REGISTRY_DELIMITER
50-
registry_array=();
37+
# Only configure auth registries if the env var contains values
38+
if [ "$AUTH_REGISTRIES" ]; then
39+
# Ref: https://stackoverflow.com/a/47633817/219530
40+
AUTH_REGISTRIES_DELIMITER=${AUTH_REGISTRIES_DELIMITER:-" "}
41+
s=$AUTH_REGISTRIES$AUTH_REGISTRIES_DELIMITER
42+
auth_array=();
5143
while [[ $s ]]; do
52-
registry_array+=( "${s%%"$AUTH_REGISTRY_DELIMITER"*}" );
53-
s=${s#*"$AUTH_REGISTRY_DELIMITER"};
44+
auth_array+=( "${s%%"$AUTH_REGISTRIES_DELIMITER"*}" );
45+
s=${s#*"$AUTH_REGISTRIES_DELIMITER"};
5446
done
55-
AUTH_HOST="${registry_array[0]}"
56-
AUTH_USER="${registry_array[1]}"
57-
AUTH_PASS="${registry_array[2]}"
58-
# make base64 not wrap lines: https://superuser.com/a/1225334
59-
AUTH_BASE64=$(echo -n "${AUTH_USER}:${AUTH_PASS}" | base64 | tr -d \\n )
60-
echo "Adding Auth for registry '${AUTH_HOST}' with user '${AUTH_USER}'."
61-
echo "\"${AUTH_HOST}\" \"${AUTH_BASE64}\";" >> /etc/nginx/docker.auth.map
62-
done
47+
48+
AUTH_REGISTRY_DELIMITER=${AUTH_REGISTRY_DELIMITER:-":"}
49+
50+
for ONEREGISTRY in "${auth_array[@]}"; do
51+
s=$ONEREGISTRY$AUTH_REGISTRY_DELIMITER
52+
registry_array=();
53+
while [[ $s ]]; do
54+
registry_array+=( "${s%%"$AUTH_REGISTRY_DELIMITER"*}" );
55+
s=${s#*"$AUTH_REGISTRY_DELIMITER"};
56+
done
57+
AUTH_HOST="${registry_array[0]}"
58+
AUTH_USER="${registry_array[1]}"
59+
AUTH_PASS="${registry_array[2]}"
60+
# make base64 not wrap lines: https://superuser.com/a/1225334
61+
AUTH_BASE64=$(echo -n "${AUTH_USER}:${AUTH_PASS}" | base64 | tr -d \\n )
62+
echo "Adding Auth for registry '${AUTH_HOST}' with user '${AUTH_USER}'."
63+
echo "\"${AUTH_HOST}\" \"${AUTH_BASE64}\";" >> /etc/nginx/docker.auth.map
64+
done
65+
fi
6366

6467
echo "" > /etc/nginx/docker.verify.ssl.conf
6568
if [[ "a${VERIFY_SSL}" == "atrue" ]]; then

0 commit comments

Comments
 (0)