Docker:如何从容器控制主机上的docker服务?

docker集装箱中可能安装docker。

如何从它的容器控制docker主机服务(pipe理另一个容器)?

如果执行docker run --privileged=true -v /var/run/docker.sock:/var/run/docker.sock -v $(which docker):$(which docker) -ti debian并inputdocker error出现: docker: error while loading shared libraries: libapparmor.so.1: cannot open shared object file: No such file

如果你的主机是基于linux的机器,你不需要在容器中安装docker,你可以将docker安装到容器中,而不pipe你在容器内部做什么,就像在主机上做一样。 我已经在Ubuntu机器上testing了它(镜像: https : //github.com/mohamnag/ubuntu-git.git ),通过将/usr/bin/docker从主机挂载到容器内的/bin/docker中。 那么在那个容器里,你可以从字面上做(构build,停止,列表…),不pipe你在docker主机里做了什么。

你看到的错误似乎很清楚: docker二进制文件需要一个共享库,不存在于容器内。

您的容器运行的是与主机相同的分发版本吗? 如果是这样,您只需确定哪些软件包提供了必要的依赖关系并将其安装在容器中。

如果没有,你可能会有更好的运气,只需在容器中安装 docker ,而不是试图从主机绑定挂载它。 可能有近期Docker版本可用于Debian的源代码。