fix: 优化界面
This commit is contained in:
23
Dockerfile
23
Dockerfile
@@ -18,5 +18,28 @@ RUN --mount=type=cache,target=/root/.cache/pip \
|
||||
|
||||
COPY . .
|
||||
|
||||
# 可选:构建时自动拉取远端仓库最新代码覆盖工作目录(默认关闭)。
|
||||
# 放在 COPY 之后,避免影响依赖层缓存;仅在你显式开启时才会触发网络更新。
|
||||
# 用法示例:
|
||||
# docker compose build \
|
||||
# --build-arg GIT_AUTO_UPDATE=1 \
|
||||
# --build-arg GIT_REMOTE_URL=https://github.com/you/repo.git \
|
||||
# --build-arg GIT_REF=main
|
||||
ARG GIT_AUTO_UPDATE=0
|
||||
ARG GIT_REMOTE_URL=
|
||||
ARG GIT_REF=main
|
||||
RUN if [ "$GIT_AUTO_UPDATE" = "1" ] && [ -n "$GIT_REMOTE_URL" ]; then \
|
||||
set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends git ca-certificates; \
|
||||
rm -rf /var/lib/apt/lists/*; \
|
||||
tmpdir="$(mktemp -d)"; \
|
||||
git clone --depth=1 --branch "$GIT_REF" "$GIT_REMOTE_URL" "$tmpdir/repo"; \
|
||||
cp -a "$tmpdir/repo/." /app/; \
|
||||
rm -rf "$tmpdir"; \
|
||||
else \
|
||||
echo "Skip remote code update (GIT_AUTO_UPDATE=0 or GIT_REMOTE_URL empty)"; \
|
||||
fi
|
||||
|
||||
EXPOSE 8000
|
||||
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]
|
||||
|
||||
Reference in New Issue
Block a user