如何使用外部应用程序访问容器文件和输出
从运行于其上的应用程序动态读取正在运行的 Docker 容器中的文件和标准输出在主机上,可以探索几种方法:
通过 Docker Logs 访问 Stdout 和API
Docker 提供了 docker logs $containerid 命令来从容器中检索 stdout。使用 -f 标志进行连续流式传输。或者,您可以使用 Docker 远程 API 直接流式传输日志。
挂载共享卷
通过在容器和主机之间创建共享卷,您可以从外部应用程序访问存储在容器中的文件。这涉及在容器创建期间使用 -v 标志来挂载容器内的主机目录。对共享卷中的文件所做的任何更改都将对容器和主机应用程序可见。
中间 Docker 容器
如果直接访问容器文件和标准输出不可行,请考虑创建一个中间 Docker 容器,它可以从另一个容器读取数据并充当应用程序的代理。此中间容器可以流式传输标准输出或与目标容器挂载共享卷,从而允许您在其他地方处理数据。
导出容器文件
对于非实时访问容器文件,可以使用 docker export 命令将容器的整个文件系统导出为 tar 存档。然后可以将该存档安装到新容器中或在主机上提取以进行处理。
以上是如何使用外部应用程序从正在运行的 Docker 容器访问文件和标准输出?的详细内容。更多信息请关注PHP中文网其他相关文章!