如何查看泊坞窗容器的日志

我有一个简单的代码,我已经创build了一个docker容器,状态显示它运行正常。 在代码里面,我使用了一些print()命令来打印数据。 我想看到那个打印命令输出。

为此,我看到了docker日志。 但它似乎没有工作,因为它没有显示日志。 如何检查日志?

  $ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a3b3fd261b94 myfirstdocker "python3 ./my_script…" 22 minutes ago Up 22 minutes elegant_darwin $ sudo docker logs a3b3fd261b94 <shows nothing> 

第一点你需要打印你的日志到stdout

要检查docker日志只需使用以下命令:

 docker logs --help Usage: docker logs [OPTIONS] CONTAINER Fetch the logs of a container Options: --details Show extra details provided to logs -f, --follow Follow log output --help Print usage --since string Show logs since timestamp --tail string Number of lines to show from the end of the logs (default "all") -t, --timestamps Show timestamps 

一些例子:

 docker logs --since=1h <container_id> 

如果没有那么多的输出(例如脚本只是试图打印几个字节),我会怀疑python缓冲它。

尝试添加更多的数据到输出,以确保缓冲区被刷新,也使用PYTHONUNBUFFERED = 1(尽pipepython3仍然可以做一些缓冲,尽pipe这个设置)。