@ -11,7 +11,7 @@ WORKDIR /app
|
||||
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
|
||||
|
||||
# 安装构建依赖 (包含CGO所需的gcc和sqlite3开发库)
|
||||
RUN apk add --no-cache git ca-certificates tzdata gcc musl-dev sqlite-dev
|
||||
RUN apk add --no-cache git ca-certificates tzdata gcc musl-dev sqlite-dev build-base
|
||||
|
||||
# 配置 Go 模块代理
|
||||
ENV GOPROXY=https://goproxy.cn,direct
|
||||
@ -24,14 +24,17 @@ RUN go mod download
|
||||
# 复制源代码
|
||||
COPY . .
|
||||
|
||||
# 构建应用程序 (启用CGO支持SQLite,使用动态链接)
|
||||
# 设置构建环境变量来修复Alpine下的SQLite问题
|
||||
ENV CGO_CFLAGS="-D_LARGEFILE64_SOURCE"
|
||||
|
||||
# 构建应用程序 (修复Alpine下的SQLite编译问题)
|
||||
RUN CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build \
|
||||
-ldflags='-w -s' \
|
||||
-tags "sqlite_omit_load_extension" \
|
||||
-o photography-api \
|
||||
./cmd/api/main.go
|
||||
|
||||
# 构建迁移工具 (启用CGO支持SQLite,使用动态链接)
|
||||
# 构建迁移工具 (修复Alpine下的SQLite编译问题)
|
||||
RUN CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build \
|
||||
-ldflags='-w -s' \
|
||||
-tags "sqlite_omit_load_extension" \
|
||||
|
||||
Reference in New Issue
Block a user