docker默認是沒有開啓Remote API的,須要咱們手動開啓。編輯/lib/systemd/system/docker.service
文件,html
在文件裏的ExecStart
參數後面添加-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
python
而後重啓sudo systemctl daemon-reload sudo service docker restart 在瀏覽器查看:git
備註:我這裏用了 JSONView-for-Chrome插件 ,用git下載下來,chrome設置 - 擴展程序 (地址欄輸入chrome://extensions/)-> 選中 開發模式-> 點擊"加載已解壓的擴展程序" -> 選擇插件目錄(xxx\JSONView-for-Chrome-master\WebContent)github
須要安裝pip3 install docker-py,理論上docker-py能夠幹全部事情,但實際如今還不不怎麼好用chrome
import docker client = docker.DockerClient("http://192.168.100.5:2375") #打印現有的images名稱 #images =client.images.list() #for img in images: #print(img.attrs["RepoTags"][0]) #獲取container for container in client.containers.list(): #print(dir(container)) print("container:"+container.name+" image:"+container.image.attrs["RepoTags"][0]) #拉取鏡像 至關於sudo docker pull alpine image = client.images.pull("alpine") #運行鏡像 若是detach=True,會當即返回一個container對象 container = client.containers.run("alpine", ["touch", "/helloworld"], detach=True) container.wait() #提交新鏡像 image = container.commit("helloworld")
import docker client = docker.DockerClient("http://192.168.100.5:2375") #打印現有的images名稱 #images =client.images.list() #for img in images: #print(img.attrs["RepoTags"][0]) #獲取container for container in client.containers.list(): #print(dir(container)) print("container:"+container.name+" image:"+container.image.attrs["RepoTags"][0]) #拉取鏡像 至關於sudo docker pull alpine image = client.images.pull("alpine") #運行鏡像 若是detach=True,會當即返回一個container對象 container = client.containers.run("alpine", ["touch", "/helloworld"], detach=True) container.wait() #提交新鏡像 image = container.commit("helloworld")
參考:docker
https://docs.docker.com/develop/sdk/examples/api
https://github.com/docker/docker-py瀏覽器
https://letong.gitbooks.io/docker/content/API/python_api.htmlapp