Mr.L commited on
Commit
ff2ab3b
·
1 Parent(s): 27c11f7

refactor: optimize Dockerfile build cache by separating dependency download

Browse files
Files changed (1) hide show
  1. Dockerfile +6 -6
Dockerfile CHANGED
@@ -3,13 +3,13 @@ FROM golang:1.21-alpine AS build
3
 
4
  WORKDIR /build
5
 
6
- # 直接复制所有源码
7
- COPY . .
 
8
 
9
- # 安装依赖并编译
10
- RUN apk add --no-cache git && \
11
- go mod download && \
12
- CGO_ENABLED=0 GOOS=linux go build -trimpath -ldflags="-s -w" -o /app/alist main.go
13
 
14
  # 生产阶段
15
  FROM alpine:3.19
 
3
 
4
  WORKDIR /build
5
 
6
+ # 复制 go.mod 和 go.sum 以利用 Docker 缓存
7
+ COPY go.mod go.sum ./
8
+ RUN apk add --no-cache git && go mod download
9
 
10
+ # 复制剩余源码并编译
11
+ COPY . .
12
+ RUN CGO_ENABLED=0 GOOS=linux go build -trimpath -ldflags="-s -w" -o /app/alist main.go
 
13
 
14
  # 生产阶段
15
  FROM alpine:3.19