没有主机卷的Docker容器B的Docker容器A访问文件系统

时间:2020-10-16 12:14:31

标签: docker

第二个Docker容器是否可以在同一系统上运行,从而本地访问另一个容器的内部文件系统?

2 个答案:

答案 0 :(得分:2)

没有映射卷,我认为这是不可能的! 当您运行容器时,Docker为该容器创建一个名称空间,并且该名称空间为该容器的进程创建了隔离层,这意味着它们的PID序列,主机名,文件系统等都被隔离了,就好像它们是那台机器上唯一的过程 如果您需要更多信息,请参考本书:https://www.manning.com/books/kubernetes-in-action

答案 1 :(得分:1)

您可以使用在两个单独的容器中作为卷安装的共享文件系统。

以下命令将在当前用户的主目录中创建一个名为nginxlogs的目录,并将其绑定安装到容器中的/ var / log / nginx中:

docker run --name=nginx -d -v ~/nginxlogs:/var/log/nginx -p 5000:80 nginx

然后,您可以在另一个容器上执行相同的操作。 最后,您必须记住,如果来自不同容器的两个单独的进程将尝试访问文件,则会导致冲突。