草庐IT

docker-env

全部标签

amazon-web-services - IAM 角色不适用于 golang Docker 容器

仅供引用,我对docker比较陌生,但在go和aws方面经验丰富。我正在使用docker容器构建我的golang应用程序(用于弹性beanstalk),并将golang:1.12.7作为我的基础镜像。我通过构建一个基础镜像来使用多阶段docker构建,然后从头开始复制我的golang二进制文件,以将我的最终镜像从1gb减少到11mb。一切都正确编译并且能够运行docker镜像;但是,当我使用多阶段构建时,我的IAM角色不起作用,并且docker镜像无法连接或检索我的IAM角色中定义的aws服务的数据。当我构建基础镜像时,没有从头开始,IAM角色工作正常并且可以从aws检索数据,但我剩下

postgresql - docker + golang lib/pq "dial tcp 127.0.0.1:5432: connect: connection refused"

sql.Open()不会出错:ifdb,err=sql.Open("postgres",url);err!=nil{returnnil,fmt.Errorf("Postgresconnecterror:(%v)",err)}但是db.Ping()会报错:iferr=db.Ping();err!=nil{returnnil,fmt.Errorf("Postgrespingerror:(%v)",err)}这仅仅是因为lib/pq连接字符串无法从具有单独连接参数的docker容器内进行连接。例如:url:=fmt.Sprintf("user=%vpassword=%vhost=%vport

docker - ci/cd中断go get测试

我正在尝试预构建docker映像,以便我的ci/cd管道运行得更快,并且go出现了问题我曾尝试过重置缓存和更改环境变量,但是没有人为我工作Fetchinghttps://git.dar.kz/forte-market/domain?go-get=1Fetchinghttps://gopkg.in/olivere/elastic.v5?go-get=1go:findinggithub.com/sirupsen/logrusv1.4.2go:findinggithub.com/modern-go/reflect2v1.0.1go:findinggithub.com/xanzy/go-git

go - 如何在 docker registry api 中为带有标签的图像名称创建 map[string][]string?

我正在使用DockerRegistryAPI,首先使用Listrepositories列出注册表中的所有图像方法,然后在图像中循环以创建一个map[string][]string:image[]tags使用Listingimagetags方法。我试过了funcGetImages(whttp.ResponseWriter,r*http.Request){w.Header().Set("Access-Control-Allow-Origin","*")res,err:=http.Get(fmt.Sprintf("%s/%s",sconf.RegistryConf.url,sconf.Reg

go - 为 golang 静态二进制文件构建、部署、推送 docker 镜像

我正在寻找解决简单配置问题的方法;它已经困扰我很长一段时间了。:)我在github上有一个golang项目,它为我提供了一个静态二进制文件,并使用了godeps。现在我想确保godepgoinstall...命令可以在gitclone和docker容器从本地新建的二进制文件构建之后运行。作为一个选项,用户应该能够将其推送到dockerhub或适用的私有(private)仓库。我正在考虑使用Makefile,但这似乎太复杂了(设置gopath,然后是godepbuild,动态修改Dockerfile以指向二进制文件所在的位置,然后是dockerbuild)。有更简单的方法吗?

docker - docker 源中的 untaggedImage 和 deletedImage 有什么区别?

docker源代码定义了一个结构,用于在运行dockerimageprune或dockersystemprune时保存已删除的图像:typeImageDeleteResponseItemstruct{//TheimageIDofanimagethatwasdeletedDeletedstring`json:"Deleted,omitempty"`//TheimageIDofanimagethatwasuntaggedUntaggedstring`json:"Untagged,omitempty"`}(sourcecodelink)看评论我不明白两者之间的区别。所有未标记的图像不也被删除

docker - 使用 Go docker SDK 的二进制 TLS 配置失败

我有一个golang二进制文件,它使用TLS与远程docker守护进程通信。二进制文件在本地计算机上成功运行。但是在dockerubuntu容器中运行此二进制文件时,tls配置失败。它因以下错误而panic/usr/local/go/src/crypto/x509/cert_pool.go:96+0x6bcrypto/x509.(*CertPool).AppendCertsFromPEM(0x0,0xc4202bd4c8,0x0,0x200,0xac8)/usr/local/go/src/crypto/x509/cert_pool.go:128+0x161github.com/dock

unix - 如何将命令行选项传递给我的 dockerized GoLang 程序?

我有一个简单的dockerizedgolang程序,我希望能够在运行容器时向它发送命令行选项。我的Dockerfile如下所示:FROMgolang:onbuildRUNgoget[MYPROGRAM] 最佳答案 只要您的应用按照Go约定编译为单个二进制文件,您就应该能够使用下面这个简单的两行代码,在ENTRYPOINT指令中将任何后续标志作为类似数组的参数传递。FROMgolang:onbuildENTRYPOINT["/go/bin/app","-name=foo","-title=bar"]

git - 使用 Docker 在生产中部署 Go 服务

我正在使用Docker开发Go服务,并认为在编译时要在生产中部署代码,我只需要dockercompose和在我的注册表上发布的Docker镜像。因为我来自PHP世界,所以我习惯于克隆我的整个项目来部署它。有什么方法可以仅使用docker-compose文件部署我的项目?我在thispost上看到了我只能gitclone一个文件,但感觉这不是一个好方法,用Docker部署Go微服务的最佳实践是什么? 最佳答案 您的问题中有两个不同的问题,我不确定您要寻找哪个问题的答案。Q1:为我的Go项目创建Dockerfile的好方法是什么A1:看

docker - Golang 内置 docker 和 requirements.txt 等价物

我知道Golangrequirements.txtequivalent,但问题的背景却大不相同。我正在尝试优化docker容器内的golang程序构建。我的dockerfile看起来像这样:FROMgolang:1.12.5asbuilderWORKDIR$GOPATH/src/test-ldap/COPYmain.go.RUNgoget-d-v./......虽然我的main.go看起来像packagemainimport("log""fmt""gopkg.in/ldap.v3")funcmain(){...当然,每次我对源代码进行更改时,docker层COPYmain.go.已更改