svjack commited on
Commit
e3b3135
·
verified ·
1 Parent(s): 31450d0

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +0 -42
Dockerfile CHANGED
@@ -1,43 +1 @@
1
- FROM docker:24-dind AS builder
2
-
3
- # 方案1:优先使用环境变量,如果未设置则尝试构建参数(兼容性更好)
4
- ENV DOCKERHUB_USERNAME=${DOCKERHUB_USERNAME:-}
5
- ENV DOCKERHUB_TOKEN=${DOCKERHUB_TOKEN:-}
6
-
7
- # 或者方案2:直接使用环境变量(Hugging Face Secrets 的默认方式)
8
- # ARG DOCKERHUB_USERNAME
9
- # ARG DOCKERHUB_TOKEN
10
- # 改为:
11
- # ENV DOCKERHUB_USERNAME=$DOCKERHUB_USERNAME
12
- # ENV DOCKERHUB_TOKEN=$DOCKERHUB_TOKEN
13
-
14
- RUN echo "调试:用户名变量长度为 ${#DOCKERHUB_USERNAME}"
15
- RUN echo "调试:令牌变量长度为 ${#DOCKERHUB_TOKEN}"
16
-
17
- # 等待守护进程启动
18
- RUN echo "等待 Docker 守护进程就绪..." && \
19
- timeout=30 && \
20
- while ! docker info > /dev/null 2>&1 && [ $timeout -gt 0 ]; do \
21
- sleep 1; \
22
- timeout=$((timeout-1)); \
23
- done
24
-
25
- # 执行登录
26
- RUN if [ -n "$DOCKERHUB_USERNAME" ] && [ -n "$DOCKERHUB_TOKEN" ]; then \
27
- echo "$DOCKERHUB_TOKEN" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin && \
28
- echo "✅ Docker Hub 登录成功"; \
29
- else \
30
- echo "⚠️ DOCKERHUB_USERNAME 或 DOCKERHUB_TOKEN 为空,尝试匿名拉取"; \
31
- fi
32
-
33
- # 拉取目标镜像
34
- RUN docker pull svjack/code-kg-chat-nextjs-pr:latest && \
35
- echo "✅ 目标镜像拉取成功" && \
36
- docker save svjack/code-kg-chat-nextjs-pr:latest -o /base-image.tar
37
-
38
- # 最终应用阶段
39
  FROM svjack/code-kg-chat-nextjs-pr:latest
40
- COPY --from=builder /base-image.tar /tmp/
41
- # ... 您的后续构建步骤
42
- WORKDIR /app
43
- COPY . .
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  FROM svjack/code-kg-chat-nextjs-pr:latest