登录
首页 >  Golang >  Go问答

Dockerfile 中使用 go get 命令安装 mongo-go-driver 失败

来源:stackoverflow

时间:2024-03-08 15:39:26 425浏览 收藏

哈喽!今天心血来潮给大家带来了《Dockerfile 中使用 go get 命令安装 mongo-go-driver 失败》,想必大家应该对Golang都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习Golang,千万别错过这篇文章~希望能帮助到你!

问题内容

我的 go 服务有一点问题。我是 go 新手,我只想对一个仅连接到 mongodb 实例的小服务进行 dockerize。

我的代码在本地运行良好。这是我的 dockerfile:

# build stage
from golang:alpine as build-env
run apk add --no-cache git
add . .

run go get -v -u go.mongodb.org/mongo-driver    
run go build -o mongotest

# final stage
from alpine
workdir /app
copy --from=build-env ./go/mongotest .

run apk update && apk add ca-certificates && rm -rf /var/cache/apk/*
expose 8000
cmd ["./mongotest"]

当我构建它时,我收到此错误消息:

Step 6/18 : RUN go get -v -u go.mongodb.org/mongo-driver
 ---> Running in 4c45c601800d
Fetching https://go.mongodb.org/mongo-driver?go-get=1
Parsing meta tags from https://go.mongodb.org/mongo-driver?go-get=1 (status code 200)
get "go.mongodb.org/mongo-driver": found meta tag get.metaImport{Prefix:"go.mongodb.org/mongo-driver", VCS:"git", RepoRoot:"https://github.com/mongodb/mongo-go-driver.git"} at https://go.mongodb.org/mongo-driver?go-get=1
go.mongodb.org/mongo-driver (download)
package go.mongodb.org/mongo-driver: no Go files in /go/src/go.mongodb.org/mongo-driver
The command '/bin/sh -c go get -v -u go.mongodb.org/mongo-driver' returned a non-zero code: 1

no go 文件位于 /go/src ... 好吧,我能用它做什么?

奇怪的是,如果我替换

run go get -d -u go.mongodb.org/mongo-driver

run go get -d -u github.com/gorilla/mux

它有效!

mongo 驱动程序存储库有问题吗?


解决方案


mongodb GitHub 存储库建议使用此命令:

dep ensure -add "go.mongodb.org/mongo-driver/mongo@~1.0.0"

你可以看到golang包url: go.mongodb.org/mongo-driver/mongo

尝试:

RUN go get -v -u go.mongodb.org/mongo-driver/mongo

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

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