7、CentOS7 安裝Docker之擴充套件(設定守護程序對外開放)
設定守護程序對外開放
雖然預設下你的Docker daemon只允許在本機訪問,但有時候也有充足理由讓其他人訪問。你可能有什麼問題想讓其他人遠端除錯,或者你可能想允許DevOps工作流來啟動主機上的一個程序。
問題
你想對其他人開放Docker伺服器的訪問許可權
方法
以開放的TCP地址啟動Docker daemon
討論
以下圖是這種技術的工作原理.
在你開放Docker daemon之前,首先得關閉它。如何關閉它取決於你的系統,如果你不清楚,先執行如下命令:
$ sudo service docker stop
如果你得到如下資訊:
The service command supports only basic LSB actions (start, stop, restart,
try-restart, reload, force-reload, status). For other actions, please try
to use systemctl.
表示你的系統啟動管理是基於systemctl的,嘗試如下命令:
$ systemctl stop docker
如果這個可行,那麼下面的命令將沒有任務輸出:
ps -ef | grep -E 'docker (-d|daemon)\b' | grep -v grep
一旦Docker daemon已經停止,你就可以使用以下的命令手動重啟來開啟對外使用者的訪問:
docker daemon -H tcp://0.0.0.0:2375
此命令以守護程序啟動docker,使用-H引數為定義主機伺服器,使用TCP協議,監聽所有IP(使用0.0.0.0),開放docker伺服器標準埠2375。如果Docker提示daemon是一個無效子命令,嘗試使用舊的-d引數。
之後你可以在外面使用如下命令來訪問docker:
$ docker -H tcp://<your host's ip>:2375
注意你在本機也使用用此方法來連線docker,因為docker已經不再監聽預設的地址。
如果你想讓此更改永久生效(即使重啟後),雖然更改docker的配置檔案:
系統Ubuntu / Debian / Gentoo配置檔案為:/etc/default/docker
OpenSuse / CentOS / Red Hat配置檔案為:/etc/sysconfg/docker
在配置檔案中找到DOCKER_OPTS,設定為以上的啟動引數,如DOCKER_OPTS=”daemon -H tcp://0.0.0.0:2375″
如果你的系統使用的是systemd配置檔案,那麼在/usr/lib/systemd/system/service/docker中找到ExecStart行,設定為ExecStart=/usr/bin/docker daemon -H tcp://0.0.0.0:2375
轉載地址:https://www.centos.bz/2016/11/open-your-docker-daemon-to-the-world/