You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
virtual-patient/docker/nginx/docs/docker-entrypoint.sh

56 lines
2.0 KiB
Bash

#!/bin/sh
# vim:sw=4:ts=4:et
set -e
# /etc/nginx/conf.d/servers.conf 文件不存在,且 UPSTREAM_SERVERS 为 true执行替换
if [ ! -f "/data/vp/nginx/conf/servers.conf" ]; then
# 执行你的命令
echo "begin replace servers.conf ...."
envsubst '$UPSTREAM_WEB_SERVERS' < /data/vp/nginx/conf/servers.conf.template> /data/vp/nginx/conf/servers.tmp
envsubst '$UPSTREAM_MANAGE_SERVERS' < /data/vp/nginx/conf/servers.tmp > /data/vp/nginx/conf/servers.conf
fi
entrypoint_log() {
if [ -z "${NGINX_ENTRYPOINT_QUIET_LOGS:-}" ]; then
echo "$@"
fi
}
if [ "$1" = "nginx" ] || [ "$1" = "nginx-debug" ]; then
if /usr/bin/find "/docker-entrypoint.d/" -mindepth 1 -maxdepth 1 -type f -print -quit 2>/dev/null | read v; then
entrypoint_log "$0: /docker-entrypoint.d/ is not empty, will attempt to perform configuration"
entrypoint_log "$0: Looking for shell scripts in /docker-entrypoint.d/"
find "/docker-entrypoint.d/" -follow -type f -print | sort -V | while read -r f; do
case "$f" in
*.envsh)
if [ -x "$f" ]; then
entrypoint_log "$0: Sourcing $f";
. "$f"
else
# warn on shell scripts without exec bit
entrypoint_log "$0: Ignoring $f, not executable";
fi
;;
*.sh)
if [ -x "$f" ]; then
entrypoint_log "$0: Launching $f";
"$f"
else
# warn on shell scripts without exec bit
entrypoint_log "$0: Ignoring $f, not executable";
fi
;;
*) entrypoint_log "$0: Ignoring $f";;
esac
done
entrypoint_log "$0: Configuration complete; ready for start up"
else
entrypoint_log "$0: No files found in /docker-entrypoint.d/, skipping configuration"
fi
fi
exec "$@"