获取容器的Docker运行命令

11

它总是docker run <镜像名称>,不是吗? - Thomas Uhrig
1
我认为这是不可能的 - Docker客户端使用REST API,而Docker客户端命令并不总是匹配API调用 - 因此服务器无法猜测原始命令并存储它。 - Boris Treukhov
@ThomasUhrig 你觉得端口映射、链接等方面怎么样? - Adam Parkin
@AdamParkin 是的,你说得对! - Thomas Uhrig
可能是在Docker中查看运行/停止容器的完整命令的重复问题。 - Kamil Sindi
1个回答

11

您可以通过查看docker inspect的输出来推断出其中大部分信息。

例如,您可以通过查看 Config.Cmd 键来发现在容器中启动的命令。 如果我运行:

$ docker run -v /tmp/data:/data --name sleep -it --rm alpine sleep 600

我之后可以运行:

$ docker inspect --format '{{.Config.Cmd}}' sleep 

并获得:

{[sleep 600]}

同样地,docker inspect 的输出结果也将包括容器中使用的 Docker 卷的信息:

$ docker inspect --format '{{.Volumes}}' sleep
map[/data:/tmp/data]
当然,你可以只运行docker inspect而不使用--format参数,这将给你一个大的(100多行)JSON输出块,其中包含所有可用键的信息,包括端口映射、网络配置等。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接