goproxy / goproxy.cn

The most trusted Go module proxy in China.
https://goproxy.cn
MIT License
6.81k stars 393 forks source link

通过dockerfile打包时, 使用go mod tidy提示: dial tcp: lookup goproxy.cn on 192.168.1.1:53: no such host #175

Closed leiax00 closed 1 year ago

leiax00 commented 1 year ago

问题

通过dockerfile打包时, 使用go mod tidy提示:

github.com/natefinch/lumberjack: github.com/natefinch/lumberjack@v2.0.0+incompatible: Get "https://goproxy.cn/github.com/natefinch/lumberjack/@v/v2.0.0+incompatible.zip": dial tcp: lookup goproxy.cn on 192.168.1.1:53: no such host

本地直接通过代理执行是没有问题的;

dockerfile:

FROM golang:1.20.2 AS builder

ARG RELATIVE_PATH
ARG APP_NAME
ARG VERSION

COPY . /src
WORKDIR /app/${RELATIVE_PATH}

#  #12 52.88 error obtaining VCS status: exit status 128
RUN go env -w GOFLAGS="-buildvcs=false"
RUN GOPROXY=https://goproxy.cn,direct make build

现象:

偶尔又可以完全下载下来, 并成功编译; 大部分时间只能下载部分, 一部分提示no such host

日志输出:

#0 0.190 mkdir -p bin/ && go mod tidy && go build -ldflags \
#0 0.190    "-X main.Version=sz-novel-1.0.2-65-g4c06e30 -X main.Name=sz-config" \
#0 0.190     -o ./bin/ ./...
#0 0.205 go: downloading github.com/google/wire v0.5.0
#0 0.206 go: downloading github.com/samber/lo v1.27.0
#0 0.206 go: downloading go.etcd.io/etcd/client/v3 v3.5.5
#0 0.207 go: downloading github.com/go-kratos/kratos/contrib/log/zap/v2 v2.0.0-20220818025856-6ca225b078b7
#0 0.211 go: downloading github.com/go-kratos/kratos/contrib/config/etcd/v2 v2.0.0-20220818025856-6ca225b078b7
#0 0.211 go: downloading github.com/go-kratos/kratos/v2 v2.6.1
#0 0.212 go: downloading github.com/gogo/protobuf v1.3.2
#0 0.219 go: downloading google.golang.org/protobuf v1.30.0
#0 0.232 go: downloading github.com/gin-gonic/gin v1.9.0
#0 0.240 go: downloading github.com/go-kratos/kratos/contrib/registry/etcd/v2 v2.0.0-20230313090112-ae4dd7f4a8f2
#0 0.246 go: downloading google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4
#0 0.253 go: downloading google.golang.org/grpc v1.53.0
#0 0.615 go: downloading github.com/google/uuid v1.3.0
#0 0.649 go: downloading golang.org/x/sync v0.1.0
#0 0.707 go: downloading go.uber.org/zap v1.22.0
#0 0.711 go: downloading github.com/natefinch/lumberjack v2.0.0+incompatible
#0 0.744 go: downloading golang.org/x/exp v0.0.0-20220303212507-bbda1eaf7a17
#0 0.760 go: downloading go.etcd.io/etcd/api/v3 v3.5.5
#0 0.881 go: downloading go.etcd.io/etcd/client/pkg/v3 v3.5.5
#0 0.896 go: downloading github.com/imdario/mergo v0.3.12
#0 0.900 go: downloading github.com/fsnotify/fsnotify v1.5.4
#0 0.973 go: downloading github.com/BurntSushi/toml v1.2.0
#0 0.974 go: downloading gopkg.in/natefinch/lumberjack.v2 v2.0.0
#0 0.975 go: downloading go.uber.org/atomic v1.10.0
#0 0.981 go: downloading go.uber.org/multierr v1.8.0
#0 1.089 go: downloading gopkg.in/yaml.v3 v3.0.1
#0 1.089 go: downloading github.com/golang/protobuf v1.5.3
#0 1.152 go: downloading github.com/coreos/go-semver v0.3.0
#0 1.180 go: downloading golang.org/x/sys v0.6.0
#0 1.181 go: downloading github.com/go-playground/form/v4 v4.2.0
#0 1.255 go: downloading github.com/coreos/go-systemd/v22 v22.3.2
#27 CANCELED
------
 > [linux/arm64 builder 7/7] RUN make build:
#26 2.075   google.golang.org/grpc: google.golang.org/grpc@v1.53.0: Get "https://goproxy.cn/google.golang.org/grpc/@v/v1.53.0.zip": dial tcp: lookup goproxy.cn on 192.168.1.1:53: no such host
#26 2.075 github.com/leiax00/simple-zero/pkg/logger imports
#26 2.075   github.com/go-kratos/kratos/contrib/log/zap/v2: github.com/go-kratos/kratos/contrib/log/zap/v2@v2.0.0-20220818025856-6ca225b078b7: Get "https://goproxy.cn/github.com/go-kratos/kratos/contrib/log/zap/v2/@v/v2.0.0-20220818025856-6ca225b078b7.zip": dial tcp: lookup goproxy.cn on 192.168.1.1:53: no such host
#26 2.075 github.com/leiax00/simple-zero/pkg/logger imports
#26 2.075   github.com/go-kratos/kratos/v2/log: github.com/go-kratos/kratos/v2@v2.6.1: Get "https://goproxy.cn/github.com/go-kratos/kratos/v2/@v/v2.6.1.zip": dial tcp: lookup goproxy.cn on 192.168.1.1:53: no such host
#26 2.075 github.com/leiax00/simple-zero/pkg/logger imports
#26 2.075   github.com/natefinch/lumberjack: github.com/natefinch/lumberjack@v2.0.0+incompatible: Get "https://goproxy.cn/github.com/natefinch/lumberjack/@v/v2.0.0+incompatible.zip": dial tcp: lookup goproxy.cn on 192.168.1.1:53: no such host
#26 2.075 github.com/leiax00/simple-zero/pkg/logger imports
#26 2.075   go.uber.org/zap/zapcore: go.uber.org/zap@v1.22.0: Get "https://goproxy.cn/go.uber.org/zap/@v/v1.22.0.zip": dial tcp: lookup goproxy.cn on 192.168.1.1:53: no such host
#26 2.082 make: *** [../../Makefile:81: build] Error 1
------
Dockerfile_go:15
--------------------
  13 |     RUN go env -w GOPROXY=https://goproxy.cn,direct
  14 |     RUN go env
  15 | >>> RUN make build
  16 |     
  17 |     FROM debian:stable-slim
--------------------
ERROR: failed to solve: process "/bin/sh -c make build" did not complete successfully: exit code: 2

网络环境说明

  1. 光猫连接一个路由器, 光猫网段: 192.168.1.1/8, 路由器网段: 192.168.0.1/8
  2. 然后通过一个交换机通过网线连接在路由器上
  3. 电脑连接在交换机上
aofei commented 1 year ago

这个是你们本地 DNS 的问题,你可以换个公共 DNS 试试,国内的类似阿里云的 223.5.5.5 或者 DNSPod 的 119.29.29.29 都挺好。

由于这个 issue 跟 goproxy.cn 或 Go 语言都无关,所以我就先关闭了。