如何启动现有的 docker 容器并显示输出?

How to start an existing docker container with displaying the output?

当我们使用 docker run 命令 运行 一个新的 docker 容器时,我们可以看到包含服务的输出。但是当我们使用 docker start 启动同一个容器时,它会在停止时打印容器的名称,而不是输出。

如何启动已停止的容器并显示输出?

示例:

docker 运行

$ docker run -p 8080:8080 --name tomcat_daemon tomcat:latest
26-Apr-2020 06:03:27.747 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/8.5.53
26-Apr-2020 06:03:27.750 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Mar 11 2020 10:01:39 UTC
26-Apr-2020 06:03:27.751 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 8.5.53.0
26-Apr-2020 06:03:27.752 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
26-Apr-2020 06:03:27.753 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            4.19.76-linuxkit
26-Apr-2020 06:03:27.754 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
...

docker开始

$ docker start tomcat_daemon
tomcat_daemon

尝试docker start -i my_container

--interactive , -i      Attach container’s STDIN

参考:https://docs.docker.com/engine/reference/commandline/start/