docker调用容器的方法是什么

docker调用容器的方法是什么?在docker中执行宿主机的docker操作,我们管它叫docker in docker。在docker中操作宿主机的docker,既可以将你的具体需求容器化部署,又不用直接在宿主机上安装(假设我们没有办法在docker中操作宿主机的docker,那么只能将这样的软件程序直接安装到宿主机上,这样显然不利于管理和维护)。

实现这种需求,其实非常简单,你只需要将docker宿主机的docker文件和docker.sock文件挂载到容器中即可,具体为:

-v /var/run/docker.sock:/var/run/docker.sock
-v /usr/bin/docker:/usr/bin/docker

你要先找到宿主机的docker和docker.sock位置,别挂载错了,标准的Linux正常来说就是上面的位置。

你在启动docker容器的时候,将上述两个文件正常挂载后,就可以在docker中执行诸如 docker images 等这样的命令了。

如果出现问题 permission denied

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock

dial unix /var/run/docker.sock: connect: permission denied

解决方法

在容器所在的宿主机上直接给 docker.sock 777权限,命令 chmod 777 docker.sock

关于docker调用容器的方法是什么就分享到这里了,希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。