2016-10-27 39 views
2

从现有码头集装箱重建docker run命令参数的最佳方法是什么?我可以使用docker inspect并使用在那里找到的信息。有没有更好的方法?从容器重建码头运行命令参数

+0

它看起来像'码头检查'是检查正在运行的容器的正确工具。使用它有什么问题?你想直接与Docker API交谈吗? – Thilo

回答

3

不是很容易,但可以通过格式化docker inspect的输出来完成。对于一个容器开始使用此命令:

> docker run -d -v ~:/home -p 8080:80 -e NEW_VAR=x --name web3 nginx:alpine sleep 10m 

可以拉出卷,端口映射,环境变量,容器名称,图片名称和命令:

> docker inspect -f "V: {{.Mounts}} P: {{.HostConfig.PortBindings}} E:{{.Config.Env}} NAME: {{.Name }} IMAGE: {{.Config.Image}} COMMAND: {{.Path}} {{.Args}}" web3 

这使你的输出:

V: [{ /home/scrapbook /home true rprivate}] P: map[80/tcp:[{ 8080}]] E:[NEW_VAR=x PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin NGINX_VERSION=1.11.5] NAME: /web3 IMAGE: nginx:alpine COMMAND: sleep [10m] 

这是一个开始。

码头船长Adrian Mouat有一个很好的博客文章格式输出:Docker Inspect Template Magic

+0

很好,谢谢。 –