登录
首页 >  Golang >  Go问答

Docker 构建失败:lstat /root/go:没有这样的文件或目录

来源:stackoverflow

时间:2024-03-30 08:45:34 451浏览 收藏

Golang不知道大家是否熟悉?今天我将给大家介绍《Docker 构建失败:lstat /root/go:没有这样的文件或目录》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪里有问题,希望大家都能积极评论指出,谢谢!希望我们能一起加油进步!

问题内容

我正在对我的应用程序进行 docker 化,该应用程序在安装了 alpine:golang 和 goswagger 的自定义基础映像中运行。目前,我正在尝试通过实施多阶段构建来减小图像大小。但是当我跑步时

swagger 生成

它总是显示错误消息:

lstat /root/go:没有这样的文件或目录

谁能告诉我这是怎么回事?我已经检查了 root/go 目录,那里没有 go 文件夹是有效的,但我可以通过运行 go build 来确认 go 的安装。

这是我的 dockerfile

# Custom image with alpine and go:1.18.2 + goswagger installed

# Build binary stage
FROM gcrdomain/mycomp/go:1.18.2 as build

WORKDIR /app

# Install make
RUN apk add --no-cache make gcc libc-dev

COPY . .

# swagger validate + clean + generate
RUN make all

# Serve the binary stage

# Bare image with required deps to serve static binary
FROM scratch

WORKDIR /app

COPY --from=build /app/telemedicine-proxy-server /telemedicine-proxy-server

CMD ["/telemedicine-proxy-server", "--port=8080", "--host=0.0.0.0"]

正确答案


最后,我发现了问题,我检查了我们的自定义基础镜像,发现在我们的基础镜像 dockerfile 中,gopath 没有放置在 /root

env go_path=/go

我已经把它改成了

ENV GO_PATH=/root/go

一切都按预期进行,感谢所有评论!:d

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>