fix: hardcode Harbor cache URLs in FROM lines to bypass Docker Hub rate limits

This commit is contained in:
Celes Renata
2026-04-19 09:41:28 +00:00
parent aaa5c26fe1
commit d21cc09109
4 changed files with 16 additions and 22 deletions
+12 -14
View File
@@ -60,7 +60,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.scheduler.app,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.scheduler.app"
when: when:
event: push event: push
branch: main branch: main
@@ -99,7 +99,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=uvicorn services.symbol_registry.app:app --host 0.0.0.0 --port 8000,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=uvicorn services.symbol_registry.app:app --host 0.0.0.0 --port 8000"
when: when:
event: push event: push
branch: main branch: main
@@ -138,7 +138,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.ingestion.worker,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.ingestion.worker"
when: when:
event: push event: push
branch: main branch: main
@@ -177,7 +177,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.parser.worker,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.parser.worker"
when: when:
event: push event: push
branch: main branch: main
@@ -216,7 +216,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.extractor.worker,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.extractor.worker"
when: when:
event: push event: push
branch: main branch: main
@@ -255,7 +255,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.aggregation.worker,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.aggregation.worker"
when: when:
event: push event: push
branch: main branch: main
@@ -294,7 +294,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.recommendation.worker,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.recommendation.worker"
when: when:
event: push event: push
branch: main branch: main
@@ -333,7 +333,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=uvicorn services.risk.app:app --host 0.0.0.0 --port 8000,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=uvicorn services.risk.app:app --host 0.0.0.0 --port 8000"
when: when:
event: push event: push
branch: main branch: main
@@ -372,7 +372,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.adapters.broker_adapter,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.adapters.broker_adapter"
when: when:
event: push event: push
branch: main branch: main
@@ -411,7 +411,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=python -m services.lake_publisher.worker,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=python -m services.lake_publisher.worker"
when: when:
event: push event: push
branch: main branch: main
@@ -450,7 +450,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=uvicorn services.api.app:app --host 0.0.0.0 --port 8000,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=uvicorn services.api.app:app --host 0.0.0.0 --port 8000"
when: when:
event: push event: push
branch: main branch: main
@@ -489,7 +489,7 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
context: . context: .
build_args: "SERVICE_CMD=uvicorn services.trading.app:app --host 0.0.0.0 --port 8000,BASE_REGISTRY=registry.celestium.life/dockerhub-cache" build_args: "SERVICE_CMD=uvicorn services.trading.app:app --host 0.0.0.0 --port 8000"
when: when:
event: push event: push
branch: main branch: main
@@ -529,7 +529,6 @@ steps:
dockerfile: frontend/Dockerfile dockerfile: frontend/Dockerfile
context: frontend context: frontend
no_cache: true no_cache: true
build_args: "BASE_REGISTRY=registry.celestium.life/dockerhub-cache"
when: when:
event: push event: push
@@ -569,7 +568,6 @@ steps:
- latest - latest
dockerfile: docker/Dockerfile.superset dockerfile: docker/Dockerfile.superset
context: docker context: docker
build_args: "BASE_REGISTRY=registry.celestium.life/dockerhub-cache"
when: when:
event: push event: push
branch: main branch: main
+1 -2
View File
@@ -1,6 +1,5 @@
# Base image: uses Harbor proxy cache in CI, falls back to Docker Hub externally # Base image: uses Harbor proxy cache in CI, falls back to Docker Hub externally
ARG BASE_REGISTRY=docker.io FROM registry.celestium.life/dockerhub-cache/library/python:3.12-slim
FROM ${BASE_REGISTRY}/library/python:3.12-slim
ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1 ENV PYTHONUNBUFFERED=1
+1 -2
View File
@@ -1,7 +1,6 @@
# Custom Superset image with Trino, PostgreSQL, and Redis drivers # Custom Superset image with Trino, PostgreSQL, and Redis drivers
# Base image: uses Harbor proxy cache in CI, falls back to Docker Hub externally # Base image: uses Harbor proxy cache in CI, falls back to Docker Hub externally
ARG BASE_REGISTRY=docker.io FROM registry.celestium.life/dockerhub-cache/apache/superset:latest
FROM ${BASE_REGISTRY}/apache/superset:latest
USER root USER root
RUN /app/docker/pip-install.sh --no-cache trino[sqlalchemy] psycopg2-binary redis RUN /app/docker/pip-install.sh --no-cache trino[sqlalchemy] psycopg2-binary redis
+2 -4
View File
@@ -1,7 +1,6 @@
# Stage 1: Build # Stage 1: Build
# Base images: uses Harbor proxy cache in CI, falls back to Docker Hub externally # Base images: uses Harbor proxy cache in CI, falls back to Docker Hub externally
ARG BASE_REGISTRY=docker.io FROM registry.celestium.life/dockerhub-cache/library/node:24-alpine AS build
FROM ${BASE_REGISTRY}/library/node:24-alpine AS build
WORKDIR /app WORKDIR /app
COPY package.json package-lock.json ./ COPY package.json package-lock.json ./
RUN npm ci RUN npm ci
@@ -12,8 +11,7 @@ ARG VITE_RISK_ENGINE_URL=""
RUN npm run build RUN npm run build
# Stage 2: Serve (unprivileged nginx, runs as uid 101, port 8080) # Stage 2: Serve (unprivileged nginx, runs as uid 101, port 8080)
ARG BASE_REGISTRY=docker.io FROM registry.celestium.life/dockerhub-cache/nginxinc/nginx-unprivileged:alpine
FROM ${BASE_REGISTRY}/nginxinc/nginx-unprivileged:alpine
COPY --from=build /app/dist /usr/share/nginx/html COPY --from=build /app/dist /usr/share/nginx/html
COPY nginx.conf /etc/nginx/conf.d/default.conf COPY nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 8080 EXPOSE 8080