在執行 systemd 的 Linux 上啟用對 Docker API 的遠端訪問

執行 systemd 的 Linux,比如 Ubuntu 16.04,將 -H tcp://0.0.0.0:2375 新增到/etc/default/docker 沒有以前的效果。

而是建立一個名為/etc/systemd/system/docker-tcp.socket 的檔案,以便在埠 4243 上的 TCP 套接字上使用 docker:

[Unit]
Description=Docker Socket for the API  
[Socket]
ListenStream=4243  
Service=docker.service  
[Install]
WantedBy=sockets.target 

然後啟用新套接字:

systemctl enable docker-tcp.socket
systemctl enable docker.socket
systemctl stop docker
systemctl start docker-tcp.socket
systemctl start docker

現在,驗證 Remote API 是否正常工作:

curl -X GET http://localhost:4243/images/json