我正在尝试从我的go代码在本地运行暂存docker容器。 Dockerfile如下:
FROM golang:1.11.4 as builder
WORKDIR /app
ADD . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GOARM=7 make
FROM scratch
COPY --from=builder /app/myprogram .
在我的代码中,我尝试使用以下网址mongodb+srv://myusername:mypassword@my-staging-vki7g.gcp.mongodb.net
我可以在本地mongoshell上完美连接到此mongodb。 但是,当我运行Scracth容器时,出现以下错误
error parsing uri (mongodb+srv://myusername:mypassword@my-staging-vki7g.gcp.mongodb.net): lookup provendb-staging-vki7g.gcp.mongodb.net on 192.168.65.1:53: cannot unmarshal DNS message
是否需要添加任何依赖项?
答案 0 :(得分:0)
我认为您会错过一些构建标志。还不确定为什么要编译为Docker容器的手臂。
我写了一篇关于构建Docker映像的博客文章,就像您在这里所做的那样。这可以帮助您解决问题。
https://marcofranssen.nl/docker-tips-and-tricks-for-your-go-projects/