Go mod 下载在 docker 文件上运行时卡住了

问题描述 投票:0回答:1

我正在尝试使用以下 Dockerfile 创建一个 docker 映像。

` 来自 golang:最新 工作目录/应用程序 ENV GOPROXY=https://proxy.golang.org ENV GOPROXY=直接 复制 go.mod 。 复制 go.sum 。 RUN go 模组下载 复制 。 。 运行 go build -o ./out/dist .

``

我能够在本地计算机上构建 go 可执行文件。但是当我运行“docker build -t app .”命令时。运行“go mod download”命令时卡住了。

我等了一个多小时。每次下载 filippo.io/edwards255919 文件时都会卡住。

我尝试过设置 GOPROXY 并更改 go 版本。不幸的是它不起作用。 我的电脑上没有任何代理。

如何构建 docker 容器而不被卡住。

docker go dockerfile
1个回答
0
投票

我建议,

  1. 尝试首先将

    ,direct
    后缀添加到您的
    GOPROXY
    环境变量并构建。

  2. 然后,将

    GOPROXY
    修改为
    https://goproxy.io,direct
    并构建。

如果它们都不起作用,请尝试

go mod vendor
将所有依赖项下载到项目根目录并将它们复制到构建器映像中。在 Dockerfile 中为
-mod=vendor
命令添加标志
go build
,以强制从现有供应商加载依赖项。

© www.soinside.com 2019 - 2024. All rights reserved.