Docker开启Remote API (CentOS7)

在系统中找到 /usr/lib/systemd/system/docker.service 文件

ExecStart=

部分增加最后一行

-H unix://var/run/docker.sock -H tcp://0.0.0.0:2375 \

表示开启 2375 端口,启用远程API

重启 docker 生效

systemctl daemon-reload

systemctl restart docker

例如当前主机地址是: 192.168.1.2

打开浏览器,输入地址和相应的API即可操作 docker。

查看docker版本

http://192.168.1.2:2375/version

查看主机上所有docker镜像

http://192.168.1.2:2375/images/json

查看所有容器清单

http://192.168.1.2:2375/ containers/json

创建新容器

在请求头中需要写创建容器的参数

http://192.168.1.2:2375/ containers/create

具体示例

curl -X POST -H "Content-Type: application/json" -d '{

    "Hostname":"", "User":"", "Memory": 0, "MemorySwap": 0,

    "AttachStdin": false, "AttachStdout": true, "AttachStderr": true,

    "PortSpecs": null, "Tty": false, "OpenStdin":  false,

    "StdinOnce": false, "Env": null, "Cmd": [ "date"  ],

    "Image": "ubuntu", "Tag": "latest", "Volumes": { "/tmp":{} },

    "WorkingDir": "", "DisableNetwork": false, 

    "ExposedPorts": {"22/tcp": {} }

    }'    http:// 192.168.1.2:2375/ containers/create

监控容器

http://192.168.1.2:2375/ containers/(id)/json

进程列表

http://192.168.1.2:2375/ containers/(id)/top 

容器日志

http://192.168.1.2:2375/ containers/(id)/logs

导出容器

http://192.168.1.2:2375/ containers/(id)/export

启动容器

http://192.168.1.2:2375/ containers/(id)/start 

停止容器

http://192.168.1.2:2375/ containers/(id)/stop

重启容器

http://192.168.1.2:2375/ containers/(id)/restart

终止容器

http://192.168.1.2:2375/ containers/(id)/kill

注意点

这个 docker remote API ,一般用完后就关掉,或者不要对公网开放,容易被黑客利用。

比如: 黑客通过这个API,下载一个挖矿的image并启动,会占用大量的系统资源。

察觉系统有异常,检查一下docker是否有问题。

查看所有 docker 容器

docker ps -a

从中找出不认识的容器,停止运行并删除。

停止容器运行

docker stop (容器id)

删除容器

docker rm  (容器id)

删除镜像

docker rmi (镜像id )

重启 docker

systemctl restart docker.service

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容