草庐IT

docker搭建wiki

全部标签

docker - 为 golang 的 dockerfile 查找路径时出错

我正在尝试用我的golang项目构建docker镜像我使用以下内容#buildstageFROMgolang:alpineasbuilderWORKDIR/go/src/appCOPY..RUNCGO_ENABLED=0GOOS=linuxgobuild-a-installsuffixcgo-ldflags'-extldflags"-static"'-omain.RUNapkadd--no-cachegit#finalstageFROMalpine:latestRUNapk--no-cacheaddca-certificatesCOPY--from=builder/go/bin/app

docker - Golang dep 不下载所有库文件

我在我的$GOPATH/src/github.com/docker中使用了docker库现在我正在尝试使用dep。在我的gopkg.toml中,它有以下描述:[[constraint]]name="github.com/docker/docker"version="1.13.1"但是在depinit完成后,我所有的代码都告诉我:Unresolvedreference'NewClientWithOpts'在我使用dep之前它曾经工作过。client.NewClientWithOpts(client.WithVersion("1.38"))当我从vendor处查找我的库时,有105个文件。

无法从外部主机访问 Docker 部署的镜像

所以我有一个Go应用程序,我正在使用Ansible和Jenkins管道作为Docker镜像部署到EC2实例。我有一个图像,我可以使用Postman使用IP地址和端口号8080从主机外部访问它。当我部署新图像时,我无法使用IP地址和端口号获得响应。当我ssh进入服务器时,我可以使用localhost和端口号到达端点。如果我停止那个图像并开始第一个图像,我就可以再次到达它。这些图像之间可能存在哪些差异,导致无法再通过IP地址访问端点?我的Docker组合文件:version:'2'services:project-1:image:...volumes:-/var/log:/var/logn

docker - 如何使用 docker go-lang API 的 TaskLogs 端点?

我的实际问题是,如何获取特定版本的go-langdocker客户端?我能找到的最新版本是一年或更早的v17.03.2-ce。我想使用具有TaskLogs的docker1.37。但是找不到这个特定版本的。如果我选择主分支,这将给我v1.39,但我安装的docker客户端API是v1.38,它会抛出错误“来自守护程序的错误响应:客户端版本1.39太新。支持的最大API版本是1.38”。为什么我需要v1.37?我使用的是v1.13.1,运行良好。现在我需要实现TaskLogs抓取器,这在v1.13.1中不可用。 最佳答案 已解决这真的很简

docker - Hyperledger Fabric 使用 go sdk 在 CouchDB 中存储交易

我正在尝试将CouchDB集成为我的Hyperledger网络的statedb,但在将值传递到putState函数(gosdk)以更新状态时遇到了问题。文档说需要将“状态”配置添加到core.yaml文件中。但是,这个文件在balance-transfer中不存在,所以我修改了network-config.yaml文件,将stateDatabase改为couchdb而不是goleveldb,如下所示:state:stateDatabase:CouchDBcouchDBConfig:couchDBAddress:https://localhost:5984username:passwor

docker - 在导出的 golang 变量中声明的正在运行的 docker 容器的最新列表

我正在尝试使用Docker的GolangSDK来维护本地Docker实例上当前正在运行的容器的slice变量。这个slice是从一个包中导出的,我想用它来提供网页。我不太习惯goroutines和channel,这就是为什么我想知道我是否找到了解决我的问题的好方法。我有一个docker包如下。https://play.golang.org/p/eMmqkMezXZn它有一个Running变量,其中包含正在运行的容器的当前状态。varRunning[]types.Container我使用reload函数将正在运行的容器加载到Running变量中。//Reloadthelistofrunn

docker - 从 ubuntu 18.04 升级到 18.10 后,docker 容器内没有互联网连接

将主机ubuntu18.04升级到18.10后,ping到google无法正常工作我的docker文件FROMgolang:1.9WORKDIR/go/src/github.com/sohag1990/gingorm-masterCOPY..docker构建命令dockerbuild-twhoshakhawat/go-app.buildsuccess使用/bin/bash运行容器dockerrun-itwhoshakhawat/go-app/bin/bashdocker容器内的ping命令root@62ba0502a1c6:/#pinggoogle.comping:google.com

docker - 在 AWS Fargate 容器中存储数据库连接字符串

现在我有一个API容器,我希望将其推送到AWSFargate实例,该实例具有用于私有(private)托管服务器上的数据库的连接字符串。为了测试,它已存储在我的Golang程序中的一个字符串中,但我真的不想在程序已经编译的情况下推送它。我研究过将GOAWSSDK用于SecretsManager,但我不确定这是否是最好的方法,或者它是否会像我希望的那样工作。处理此问题的最佳方法是什么? 最佳答案 将东西硬编码到程序中显然不是最好的选择,所以我分享你的痛苦和对更好东西的需求,这可能是:将连接字符串定义到环境变量中。此解决方案不会对信息进

docker - 无法使用 go 从 minikube 上传图像文件

下面是我上传图片的main.go文件。这里使用这个go文件构建一个docker镜像。docker构建成功。在访问minikube服务url时,获取上传、列出和删除文件的选项。但是一旦点击上传文件,就无法访​​问获取站点。varbaseDirectorystringvaripaddressstringfuncmain(){baseDirectory="/usr/local/go/"//providethebasedirectorypathwherethefileswillbekeptipaddress="localhost"//providetheipaddressofthewebser

docker - 在 Docker 中从 Github 运行 go 文件

我使用“goget”命令从Github和Docker中的其他依赖项下载并安装我的go代码。例如:dockerrungolanggoget-v"github_repo_directory"它最初为依赖项下载了900多MB。然后我可以创建容器并在docker容器内运行代码。问题是每当我更改代码中的某些内容时,我都必须完成所有过程,并且它会再次下载大量文件。有什么办法可以让我每次修改代码时,都不必下载所有依赖项吗?我正在使用以下引用来运行我的代码。https://flaviocopes.com/golang-docker/ 最佳答案 这取