From 7b6c4f2cf230269ba95f49f061309035eec19cff Mon Sep 17 00:00:00 2001 From: zhouyonggao <1971162852@qq.com> Date: Sat, 20 Dec 2025 15:21:24 +0800 Subject: [PATCH] =?UTF-8?q?chore(docker):=20=E4=BC=98=E5=8C=96=20Dockerfil?= =?UTF-8?q?e=20=E4=B8=AD=E7=9A=84=20proto=20=E6=96=87=E4=BB=B6=E7=94=9F?= =?UTF-8?q?=E6=88=90=E6=AD=A5=E9=AA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改 proto 文件生成命令,确保只生成所需的 go、grpc、validate 和 errors 文件,排除 HTTP 相关文件以避免依赖问题。 - 通过指定路径和文件类型,提升生成效率并减少不必要的构建依赖。 --- Dockerfile | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 71433d0..d422cad 100644 --- a/Dockerfile +++ b/Dockerfile @@ -33,9 +33,16 @@ RUN go install google.golang.org/protobuf/cmd/protoc-gen-go@latest && \ WORKDIR /app COPY grpc/ ./grpc/ -# 在容器内生成 proto 文件 +# 在容器内生成 proto 文件(只生成需要的文件,排除 HTTP 相关) WORKDIR /app/grpc -RUN make generate +# 只生成 go、grpc、validate 和 errors 文件,不生成 http 文件(避免依赖问题) +RUN protoc --proto_path=./ \ + --proto_path=./third_party \ + --go_out=paths=source_relative:./ \ + --go-grpc_out=paths=source_relative:./ \ + --validate_out=paths=source_relative,lang=go:./ \ + --go-errors_out=paths=source_relative:./ \ + $(find . -path "./third_party" -prune -o -type f -name "*.proto" -print) # 生成 proto 后,更新依赖(proto 生成的文件可能需要额外的依赖) WORKDIR /app/grpc/user/userv1