wzxwhxcz commited on
Commit
127f68f
·
verified ·
1 Parent(s): a4f88a1

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +9 -14
Dockerfile CHANGED
@@ -1,30 +1,25 @@
1
  # 第一阶段:编译
2
  FROM golang:1.21-alpine AS builder
3
-
4
- # 安装 git,因为 go mod tidy 可能需要拉取仓库
5
  RUN apk add --no-cache git
6
-
7
  WORKDIR /app
8
-
9
- # 复制所有文件
10
  COPY . .
11
-
12
- # 【关键步骤】在云端环境强制整理依赖并生成 go.sum
13
  RUN go mod tidy
14
-
15
- # 编译程序
16
  RUN go build -o main .
17
 
18
  # 第二阶段:运行
19
  FROM alpine:latest
20
- # 如果你的程序用了 sqlite,建议安装基本运行库
21
  RUN apk add --no-cache ca-certificates libc6-compat
22
-
23
  WORKDIR /root/
 
 
24
  COPY --from=builder /app/main .
25
- # 如果你有 .env 文件且已上传,取消下面这行注释
26
- # COPY --from=builder /app/.env .
27
 
28
- # Hugging Face 必须使用 7860 端口
 
 
 
 
 
 
29
  EXPOSE 7860
30
  CMD ["./main"]
 
1
  # 第一阶段:编译
2
  FROM golang:1.21-alpine AS builder
 
 
3
  RUN apk add --no-cache git
 
4
  WORKDIR /app
 
 
5
  COPY . .
 
 
6
  RUN go mod tidy
 
 
7
  RUN go build -o main .
8
 
9
  # 第二阶段:运行
10
  FROM alpine:latest
 
11
  RUN apk add --no-cache ca-certificates libc6-compat
 
12
  WORKDIR /root/
13
+
14
+ # 【关键修复】从编译阶段复制二进制文件
15
  COPY --from=builder /app/main .
 
 
16
 
17
+ # 【关键修复】从编译阶段复制整个 web 文件夹(包含 templates 和 static)
18
+ # 确保你的项目根目录下确实有名为 web 的文件夹
19
+ COPY --from=builder /app/web ./web
20
+
21
+ # 如果你有其他需要的文件(比如 sql 文件或静态配置),也在这里 COPY
22
+ # COPY --from=builder /app/some_other_folder ./some_other_folder
23
+
24
  EXPOSE 7860
25
  CMD ["./main"]