如何在Docker中查看正在运行的容器/进程的完整命令?

$ docker ps --all
CONTAINER ID    IMAGE          COMMAND                 CREATED          STATUS                     PORTS    NAMES
5b6291859b61    nginx:1.7.8    "nginx -g 'daemon of    4 minutes ago    Exited (0) 4 minutes ago            thirsty_brattain

我只能看到“nginx -g 'daemon of”..这里,不是完整的命令。


当前回答

把迪伦的评论变成一个全面的回答,因为太有用了:

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike YOUR-CONTAINER

它能做什么?在容器中运行https://github.com/lavie/runlike,获取完整的docker run命令,然后为您删除容器。

其他回答

使用runlike从git仓库https://github.com/lavie/runlike

安装runlike

pip install runlike

由于它接受容器id作为参数,因此要提取容器id,请使用以下命令

docker ps -a -q

你可以使用runlike来提取完整的docker运行命令

runlike <docker container ID>

Use:

docker inspect -f "{{.Name}} {{.Config.Cmd}}" $(docker ps -a -q)

... 它会对所有集装箱进行“码头工人检查”。

Use:

docker inspect -f "{{.Path}} {{.Args}} ({{.Id}})" $(docker ps -a -q)

这将显示命令路径和参数,类似于docker ps。

Docker ps——no-trunc将显示完整的命令以及正在运行的容器的其他详细信息。

把迪伦的评论变成一个全面的回答,因为太有用了:

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike YOUR-CONTAINER

它能做什么?在容器中运行https://github.com/lavie/runlike,获取完整的docker run命令,然后为您删除容器。