#!/bin/sh set -eu NGINX_PORT="${NGINX_PORT:-3501}" NGINX_SERVER_NAME="${NGINX_SERVER_NAME:-_}" SSL_CERT_DIR="${SSL_CERT_DIR:-/etc/nginx/certs}" SSL_CERT_FILE_NAME="${SSL_CERT_FILE_NAME:-RSA-cert.pem}" SSL_CHAIN_FILE_NAME="${SSL_CHAIN_FILE_NAME:-RSA-chain.pem}" SSL_KEY_FILE_NAME="${SSL_KEY_FILE_NAME:-RSA-privkey.pem}" UPSTREAM_HOST="${UPSTREAM_HOST:-badminton-scoreboard}" UPSTREAM_PORT="${UPSTREAM_PORT:-8788}" GENERATED_DIR="/etc/nginx/generated" GENERATED_CERT_PATH="${GENERATED_DIR}/fullchain.pem" GENERATED_KEY_PATH="${GENERATED_DIR}/privkey.pem" mkdir -p "${GENERATED_DIR}" build_cert_bundle() { cert_path="${SSL_CERT_DIR}/${SSL_CERT_FILE_NAME}" chain_path="${SSL_CERT_DIR}/${SSL_CHAIN_FILE_NAME}" key_path="${SSL_CERT_DIR}/${SSL_KEY_FILE_NAME}" if [ ! -f "${cert_path}" ]; then echo "Missing certificate file: ${cert_path}" >&2 exit 1 fi if [ ! -f "${chain_path}" ]; then echo "Missing chain file: ${chain_path}" >&2 exit 1 fi if [ ! -f "${key_path}" ]; then echo "Missing key file: ${key_path}" >&2 exit 1 fi cat "${cert_path}" "${chain_path}" > "${GENERATED_CERT_PATH}" cp "${key_path}" "${GENERATED_KEY_PATH}" } write_nginx_config() { cat > /etc/nginx/conf.d/default.conf </dev/null || true } trap cleanup INT TERM nginx -g 'daemon off;' & NGINX_PID=$! wait "${NGINX_PID}"