我最近一直在试验Docker,我希望能够从容器内访问Docker,以便运行更多的容器。当我试验该平台时,我在 Mac 上本地运行它,我不确定如何启用从容器内部访问 Docker 守护程序。
为了在本地访问守护进程,我使用 UNIX 套接字/var/run/docker.sock
,但是 UNIX 套接字无法联网,所以我找到了一篇文章解释如何在 Ubuntu (http://www.virtuallyghetto.com/2014/07/quick-tip-how-to-enable-docker-remote-api.html) 上启用 Docker 远程访问 REST API。它解释了我需要如何将DOCKER_OPTS='-H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock'
附加到文件/etc/init/docker.conf
,但是我无法在Mac上找到此文件。
任何帮助或指示将不胜感激,
干杯
您需要设置一个DOCKER_HOST环境变量:
export DOCKER_HOST='-H unix:///var/run/docker.sock -H tcp://localhost:2376'
您可以在~/Library/LaunchAgents/
中创建environment.plist
文件,以便在系统启动时执行此操作:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>my.startup</string>
<key>ProgramArguments</key>
<array>
<string>sh</string>
<string>-c</string>
<string>
launchctl setenv DOCKER_HOST -H unix:///var/run/docker.sock -H tcp://localhost:2376
</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>