如何通过tcp-socker访问Docker守护进程?

我已经添加了

DOCKER_OPTS="-H tcp://0.0.0.0:2375"

到/ etc / default / docker以使Docker API在我的主机上可访问(我在Ubuntu VM上的Virtualbox中运行Docker).但是,当我尝试立即运行任何Docker命令时,我只会收到以下错误消息:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

我尝试了sudo service docker restart,并重新启动了机器,但没有任何反应.知道是什么问题吗?

最佳答案
要通过tcp套接字使用守护程序,应将-H tcp://0.0.0.0:2375选项添加到命令docker(同时用于守护程序和运行).

要使用默认的Unix套接字访问该守护程序,请确保还通过选项-H = unix:///var/run/docker.sock启动了Docker守护程序.

请注意,如果您不信任所处的网络,则使用tcp是危险的.这是手册页中的文档:

   -H, --host=[unix:///var/run/docker.sock]: tcp://[host]:[port][path] to bind or unix://[/path/to/socket] to use.
     The socket(s) to bind to in daemon mode specified using one or more
     tcp://host:port/path, unix:///path/to/socket, fd://* or fd://socketfd.
     If the tcp port is not specified, then it will default to either 2375 when
     --tls is off, or 2376 when --tls is on, or --tlsverify is specified.

转载注明原文:如何通过tcp-socker访问Docker守护进程? - 代码日志