это своего рода тупик ... вот как я заставил его работать:
В вашем Dockerfile добавьте строку, чтобы скопировать ваш собственный шаблон в ваше изображение:
COPY ./data/nginx-custom.template /usr/local/kong/nginx-custom.template
И COPY в новом файле docker-entrypoint.sh
COPY ./docker-entrypoint.sh /docker-entrypoint.sh
И этот CMD:
CMD ["/usr/local/openresty/nginx/sbin/nginx", "-c", "/usr/local/kong/nginx.conf", "-p", "/usr/local/kong/"]
файл docker-entrypoint.sh
должен выглядеть следующим образом:
#!/bin/sh
set -e
# Disabling nginx daemon mode
export KONG_NGINX_DAEMON="off"
# Setting default prefix (override any existing variable)
export KONG_PREFIX="/usr/local/kong"
# Prepare Kong prefix
if [ "$1" = "/usr/local/openresty/nginx/sbin/nginx" ]; then
kong prepare -p "/usr/local/kong" --nginx-conf "/usr/local/kong/nginx-custom.template"
fi
exec "$@"
, команда kong prepare
создает файл конфигурации из вашего пользовательского шаблона, а затем CMD перезапускает nginx с вашей конфигурацией.
Я чувствую, что должен быть способ перезагрузки, специфичный для Конга, но kong reload
не делает того, чего я ожидаю ...