fix registry link

This commit is contained in:
root
2026-06-02 15:17:09 -04:00
parent da1841e6b9
commit a9305fa4a2
8 changed files with 134 additions and 9 deletions
+39
View File
@@ -8,6 +8,8 @@ PORTAINER_COMPOSE_FILE="${ROOT_DIR}/docker-compose.portainer.production.yml"
REGISTRY_COMPOSE_FILE="${ROOT_DIR}/docker-compose.registry.production.yml"
TRAEFIK_COMPOSE_FILE="${ROOT_DIR}/traefik.yaml"
ENV_FILE="${ROOT_DIR}/.env.docker.production"
DYNAMIC_DIR="${ROOT_DIR}/dynamic"
REGISTRY_DYNAMIC_FILE="${DYNAMIC_DIR}/registry-upstream.yml"
PROJECT_NAME="${DOCKER_PROD_PROJECT_NAME:-rentaldrivego-prod}"
PORTAINER_PROJECT_NAME="${DOCKER_PORTAINER_PROJECT_NAME:-rentaldrivego-portainer-prod}"
REGISTRY_PROJECT_NAME="${DOCKER_REGISTRY_PROJECT_NAME:-rentaldrivego-registry-prod}"
@@ -39,6 +41,10 @@ ensure_api_uploads_volume() {
fi
}
ensure_dynamic_dir() {
mkdir -p "${DYNAMIC_DIR}"
}
prod_compose() {
docker compose -p "${PROJECT_NAME}" --env-file "${ENV_FILE}" -f "${PROD_COMPOSE_FILE}" "$@"
}
@@ -149,6 +155,38 @@ start_portainer() {
portainer_compose up -d
}
render_registry_proxy_config() {
ensure_dynamic_dir
if [[ -z "${REGISTRY_DOMAIN:-}" && -z "${REGISTRY_UPSTREAM_URL:-}" ]]; then
rm -f "${REGISTRY_DYNAMIC_FILE}"
return 0
fi
if [[ -z "${REGISTRY_DOMAIN:-}" || -z "${REGISTRY_UPSTREAM_URL:-}" ]]; then
echo "REGISTRY_DOMAIN and REGISTRY_UPSTREAM_URL must either both be set or both be unset." >&2
exit 1
fi
cat > "${REGISTRY_DYNAMIC_FILE}" <<EOF
http:
routers:
registry:
rule: Host(\`${REGISTRY_DOMAIN}\`)
entryPoints:
- websecure
tls:
certResolver: letsencrypt
service: registry-upstream
services:
registry-upstream:
loadBalancer:
servers:
- url: "${REGISTRY_UPSTREAM_URL}"
EOF
}
ensure_registry_auth_file() {
mkdir -p "${REGISTRY_AUTH_DIR}"
@@ -176,6 +214,7 @@ start_registry() {
start_traefik() {
ensure_env_file
ensure_traefik_network
render_registry_proxy_config
traefik_compose up -d
}