一尘不染

使用golang docker API模拟docker run

go

我怎样才能达到

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-dockerclienthttps://github.com/samalba/dockerclient是好的。


阅读 449

收藏
2020-07-02

共1个答案

一尘不染

使用github.com/fsouza/go- dockerclient,您首先必须创建一个容器,使用CreateContainerOptions来添加可以通过命令行添加的相同选项。

container, err := client.CreateContainer(createContainerOptions)

有了容器后,您可以使用中的任何其他选项或替代项来启动容器HostConfig

client.StartContainer(container.ID, hostConfig)

要连接到容器的std
io流,需要使用client.AttachToContainer,并在中分配适当的流AttachToContinerOptions

2020-07-02