使用golang docker API模拟`docker run`

时间:2015-06-04 19:59:11

标签: go docker

如何实现

的等价物
sudo docker run -it --rm --name my-python-container -v "$PWD":/usr/src/myapp -w /usr/src/myapp python:2-slim python test.py

使用Docker API for Golang?

https://github.com/fsouza/go-dockerclienthttps://github.com/samalba/dockerclient都可以。

1 个答案:

答案 0 :(得分:8)

使用github.com/fsouza/go-dockerclient,您必须先create a container,使用CreateContainerOptions通过命令行添加相同的选项。

container, err := client.CreateContainer(createContainerOptions)

一旦您拥有容器start itHostConfig

中有任何额外选项或替代
client.StartContainer(container.ID, hostConfig)

要连接到容器的标准流,您需要使用client.AttachToContainer,并在AttachToContinerOptions中分配相应的流。