gpt4 book ai didi

docker - 由docker-compose创建的容器在​​终止后不会出现在docker ps中

转载 作者:行者123 更新时间:2023-12-02 18:22:40 25 4
gpt4 key购买 nike

我的问题

当以docker run开头的docker容器退出时,该容器仍在docker ps -a中列出,并且可以使用docker logs <id>查看其日志。

但是,当使用docker-compose启动docker容器时,它在运行时仅显示在docker psdocker logs中。它存在后,将无法访问其日志。

不用说,我没有删除容器,也没有使用--rm或任何其他删除参数。



容器运行时:

$ sudo docker logs d6a06d6655b1

> test /usr/src/what/ever/src
> ava "--match=gong*" "--verbose" "--serial"


✔ gong › gong_tests › gong1
...

容器退出后
$ sudo docker logs d6a06d6655b1
Error response from daemon: No such container: d6a06d6655b1

我的问题

如何查看由 docker-compose启动的已退出Docker容器的日志?

更新资料

就我而言,这是一个愚蠢的错误,但在极少数情况下,将来可能与其他人有关:

我的 Makefile包含一个 docker-compose down命令,该命令 rm对实例进行了编码。

最佳答案

我无法重现您描述的行为。如果我以简单的docker-compose.yaml开头:

version: "3"

services:
example:
image: alpine
command: "echo this is a test"

然后使用 docker-compose up运行它:
Starting compose_example_1 ... 
Starting compose_example_1 ... done
Attaching to compose_example_1
example_1 | this is a test
compose_example_1 exited with code 0

容器在 docker ps -a的输出中按预期可见:
CONTAINER ID        IMAGE                         COMMAND                  CREATED              STATUS                      PORTS               NAMES
929fa9ccc631 alpine "echo this is a te..." About a minute ago Exited (0) 32 seconds ago compose_example_1
docker logs可以正常工作:
$ docker logs compose_example_1
this is a test

如果您看到不同的行为,请更新您的问题,以包括您正在使用的 dockerdocker-compose的版本以及可重现该行为的特定步骤序列。

关于docker - 由docker-compose创建的容器在​​终止后不会出现在docker ps中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46287048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com