Commit 1f8730ec authored by BO ZHANG's avatar BO ZHANG 🏀
Browse files

build(docker): 为 worker_stats_agent 添加 pip 构建参数支持

parent 22f0523c
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -31,15 +31,19 @@ ANSIBLE_EXTRA_VARS += -e harbor_project=$(HARBOR_PROJECT)
endif

API_GATEWAY_BUILD_ARGS := --build-arg PIP_DEFAULT_TIMEOUT=$(PIP_DEFAULT_TIMEOUT) --build-arg PIP_RETRIES=$(PIP_RETRIES)
WORKER_STATS_AGENT_BUILD_ARGS := --build-arg PIP_DEFAULT_TIMEOUT=$(PIP_DEFAULT_TIMEOUT) --build-arg PIP_RETRIES=$(PIP_RETRIES)
DOCKER_BUILD_FLAGS := --pull --no-cache --progress=$(DOCKER_BUILD_PROGRESS)
ifneq ($(strip $(PIP_INDEX_URL)),)
API_GATEWAY_BUILD_ARGS += --build-arg PIP_INDEX_URL=$(PIP_INDEX_URL)
WORKER_STATS_AGENT_BUILD_ARGS += --build-arg PIP_INDEX_URL=$(PIP_INDEX_URL)
endif
ifneq ($(strip $(PIP_EXTRA_INDEX_URL)),)
API_GATEWAY_BUILD_ARGS += --build-arg PIP_EXTRA_INDEX_URL=$(PIP_EXTRA_INDEX_URL)
WORKER_STATS_AGENT_BUILD_ARGS += --build-arg PIP_EXTRA_INDEX_URL=$(PIP_EXTRA_INDEX_URL)
endif
ifneq ($(strip $(PIP_TRUSTED_HOST)),)
API_GATEWAY_BUILD_ARGS += --build-arg PIP_TRUSTED_HOST=$(PIP_TRUSTED_HOST)
WORKER_STATS_AGENT_BUILD_ARGS += --build-arg PIP_TRUSTED_HOST=$(PIP_TRUSTED_HOST)
endif

help:
@@ -122,7 +126,7 @@ build:
		fi; \
	docker build $(DOCKER_BUILD_FLAGS) $(API_GATEWAY_BUILD_ARGS) -t $(TARGET_API_GATEWAY) ./api_gateway; \
	echo "[$$(($$total+3))/$${total_imgs}] Building Worker Stats Agent Image ($(TARGET_WORKER_STATS_AGENT))..."; \
	docker build $(DOCKER_BUILD_FLAGS) -t $(TARGET_WORKER_STATS_AGENT) ./worker_stats_agent; \
	docker build $(DOCKER_BUILD_FLAGS) $(WORKER_STATS_AGENT_BUILD_ARGS) -t $(TARGET_WORKER_STATS_AGENT) ./worker_stats_agent; \
	echo "[$$(($$total+4))/$${total_imgs}] Building Task Portal Image ($(TARGET_TASK_PORTAL)) with BUILD_NUMBER=$(BUILD_NUMBER)..."; \
	docker build $(DOCKER_BUILD_FLAGS) --build-arg VITE_BUILD_NUMBER=$(BUILD_NUMBER) --build-arg VITE_BUILD_TIME="$(shell TZ=Asia/Shanghai date '+%Y-%m-%d %H:%M:%S %Z')" -t $(TARGET_TASK_PORTAL) ./frontend_vue; \
	if [ "$(SKIP_JS9)" != "1" ]; then \
+12 −1
Original line number Diff line number Diff line
@@ -4,10 +4,21 @@ ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    PIP_NO_CACHE_DIR=1

ARG PIP_INDEX_URL
ARG PIP_EXTRA_INDEX_URL
ARG PIP_TRUSTED_HOST
ARG PIP_DEFAULT_TIMEOUT=120
ARG PIP_RETRIES=5

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
RUN set -e; \
    pip_args="--no-cache-dir --default-timeout=${PIP_DEFAULT_TIMEOUT} --retries=${PIP_RETRIES}"; \
    if [ -n "${PIP_INDEX_URL}" ]; then pip_args="$pip_args -i ${PIP_INDEX_URL}"; fi; \
    if [ -n "${PIP_EXTRA_INDEX_URL}" ]; then for url in ${PIP_EXTRA_INDEX_URL}; do pip_args="$pip_args --extra-index-url ${url}"; done; fi; \
    if [ -n "${PIP_TRUSTED_HOST}" ]; then for host in ${PIP_TRUSTED_HOST}; do pip_args="$pip_args --trusted-host ${host}"; done; fi; \
    pip install $pip_args -r requirements.txt

COPY app.py .