我目前正在使用vscode的远程容器扩展和一个指向我的docker-compose.yml
文件的.devcontainer.json
文件。
一切正常,我的docker-compose start命令开始运行(启动了一个Web服务器),但是我还没有找到一种方法来快速查看Web服务器上的日志。有人找到一种方法来在vscode连接到远程容器后自动查看docker日志输出吗?
我知道,作为一种替代方法,我可以删除容器的start命令,在vscode连接后,手动打开一个终端并启动Web服务器,但我希望有一种更简单的方法。
提前感谢!
6条答案
按热度按时间pbossiut1#
我没有使用远程container,只使用了一次本地container,所以不确定这是否适用,但是对于本地运行的container,您可以转到“Docker”选项卡(您需要安装the official Microsoft Docker VS Code Plugin),在那里您可以看到您正在运行的container。只需右键单击您想要查看日志的container,然后选择“View Logs”:
您将在“终端”面板中看到一个新的“任务”,它将显示您的所有Docker日志:
r8xiu3jd2#
这个问题已经很老了,我不确定这个选项现在是否可用,但只需打开命令面板(F1),然后选择/查找“Remote-Containers:显示日志”。
现在您可以在终端中看到您的集装箱日志。
kuuvgm7e3#
您可以开启指令选项板并搜寻:远程资源管理器:聚焦在容器视图上。你应该看到一个容器的侧边栏,如果你右键单击你的容器,你可以查看日志。
ebdffaop4#
我使用VS Code的内置terminal来查看与VS Code连接的Docker容器的实时日志。
当VS Code连接到Docker容器时,您可以使用
View > Terminal
菜单选项打开内置终端。您应该会看到一个标记为Dev Containers
的现有终端。4ktjp1zp5#
也许这太晚了?但对其他人来说,这就是我的做法。
首先,我将所有输出重定向到一个文件中,然后使用
tail
命令将输出流到终端,而不是将内容记录到stdout
。例如,我将转到此处:
完成后,我打开我的终端并运行以下命令:
$ tail -f {logFileName}
我想这是一种方法,但我当然希望VSCode能提出一个更好的解决方案。
djp7away6#
在“远程资源管理器”选项卡中,您可以看到所有的Docker容器。在“开发容器”下是
devcontainer.json
中指定的service
的容器;其余的都在“其他容器”中。只需右键单击您感兴趣的容器,然后单击“显示容器日志”。您将看到该服务的命令的完整输出,就像在交互式终端中一样-而不是Docker构建日志!注我使用的是本地开发容器,并没有使用远程容器进行测试,但我猜应该是一样的。