docker API 配置与使用

在网上看到一大堆乱乱七八招的博客,很多都不能用,我根据这些天踩的坑来总结一下吧

首先!怎么配置 docker API

两种方法

  1. /etc/sysconfig/docker文件里加一行OPTIONS='-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'(假如options已经存在 参数加后面就好了)
OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'
  1. /usr/lib/systemd/system/docker.servic文件里的ExecStart参数后面添加-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

我比较喜欢第一个

  • 配置文件修改之后 重启

    systemctl restart docker
    

以上就是配置,一行代码的事,接下来检查时候真的docker api可以用了

curl http://127.0.0.1:2375/info 

是不是出现一大堆信息? 那就是成功了

接下来我们格式化一下

curl http://127.0.0.1:2375/info | python -m json.tool

是不是出现了版本信息? 说明成功了,python -m json.tool这个干嘛的自行百度吧,格式化工具

查询docker版本信息

[root@registry sysconfig]# curl http://localhost:2375/version | python -m json.tool
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   273  100   273    0     0   1799      0 --:--:-- --:--:-- --:--:--  1807
{
    "ApiVersion": "1.24",
    "Arch": "amd64",
    "BuildTime": "2018-01-30T09:17:00.069703428+00:00",
    "GitCommit": "3e8e77d/1.12.6",
    "GoVersion": "go1.8.3",
    "KernelVersion": "3.10.0-229.el7.x86_64",
    "Os": "linux",
    "PkgVersion": "docker-1.12.6-71.git3e8e77d.el7.centos.1.x86_64",
    "Version": "1.12.6"
}

列举docker容器

curl http://localhost:2375/containers/json

列举docker镜像

curl  http://localhost:2375/images/json   

查询镜像详细信息

curl http://localhost:2375/images/pid/json

启动容器

curl -X POST -H "Content-Type: application/json" http://localhost:2375/containers/pid/start

停止容器

 curl -X POST -H "Content-Type: application/json" http://localhost:2375/containers/pid/stop
posted @ 2018-04-02 16:00  归去来兮-不如去兮  阅读(6351)  评论(0编辑  收藏  举报