使用golang docker API模拟docker run
我怎样才能达到相当于
sudo docker run -it --rm --name my-python-container -v "$PWD":/usr/src/myapp -w /usr/src/myapp python:2-slim python test.py
使用Golang的Docker API?
无论是https://github.com/fsouza/go-dockerclient或https://github.com/samalba/dockerclient都没问题。
使用github.com/fsouza/go-dockerclient
,你必须首先创build一个容器 ,使用CreateContainerOptions
添加你可以通过命令行的相同选项。
container, err := client.CreateContainer(createContainerOptions)
一旦拥有容器, 就可以在HostConfig
添加任何额外的选项或覆盖
client.StartContainer(container.ID, hostConfig)
要连接到容器的std iostream,您需要使用client.AttachToContainer
,并在AttachToContinerOptions
分配适当的stream。
- 消息:读取ECONNRESET,堆栈:错误:从Docker容器内的Go客户端调用HapiJs服务器时读取ECONNRESET
- Docker Windows授予构build代理用户的权限
- Docker:从一个私人的GitHub仓库获取
- 编译/安装libcontainer时由于自定义编译内核错误
- 在Docker Swarm集群上访问Couchbase容器的IP地址
- 如何从Docker容器中检索GOPATH?
- Go和Docker:当我使用stdlib时,我能够运行一个去web服务器,当我使用自定义包发生错误
- 如何将Docker Web应用程序容器连接到Docker PostgreSQL容器?
- Golang:当作为makefile的一部分被调用的时候,构build失败