Docker 1 12新功能探索(8) Remote Api 1 24

Docker的Remote Api并不是1.12才有的,Docker1.12的Remote Api升到了1.24。Remote api的使用在1.12中没有大的变化,稍微大一点的变化是到这个版本之后,二进制文件分裂成了主client的docker以及主server的dockerd了。在centos上通过systemd的配置变化不大,无非是将tcp://ip:port设定到启动的Option中而已,下面来看一下如何设定和简单使用。

事前确认

可以看到只有unix socket的方式

[[email protected] system]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2016-08-20 09:17:29 EDT; 5min ago
     Docs: https://docs.docker.com
 Main PID: 12409 (dockerd)
   Memory: 31.5M
   CGroup: /system.slice/docker.service
           tq12409 /usr/bin/dockerd
           mq12412 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --shim docker-containerd-shim --metrics-inte...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

修正设定文件

[root@host34 system]# cp /usr/lib/systemd/system/docker.service /usr/lib/systemd/system/docker.service.bak
[root@host34 system]# vi /usr/lib/systemd/system/docker.service
[root@host34 system]# diff /usr/lib/systemd/system/docker.service /usr/lib/systemd/system/docker.service.bak
11c11
< ExecStart=/usr/bin/dockerd -H 192.168.32.34:2375
---
> ExecStart=/usr/bin/dockerd
[root@host34 system]#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

daemon-reload和重启docker

命令:systemctl daemon-reload
命令:systemctl restart docker
  • 1
  • 2
[[email protected] system]# systemctl daemon-reload
[[email protected] system]# systemctl restart docker
[[email protected] system]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2016-08-20 23:48:09 EDT; 10s ago
     Docs: https://docs.docker.com
 Main PID: 13063 (dockerd)
   Memory: 21.7M
   CGroup: /system.slice/docker.service
           tq13063 /usr/bin/dockerd -H 192.168.32.34:2375
           mq13067 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --shim docker-containerd-shim --metrics-inte...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

确认remote api

使用curl确认remote api版本和docker版本信息

[root@host34 system]# curl http://192.168.32.34:2375/version
{"Version":"1.12.1","ApiVersion":"1.24","GitCommit":"23cf638","GoVersion":"go1.6.3","Os":"linux","Arch":"amd64","KernelVersion":"3.10.0-327.28.2.el7.x86_64","Experimental":true}
[root@host34 system]#
  • 1
  • 2
  • 3

通过remote api取得image list

通过images/json来取得image列表

[root@host34 system]# curl http://192.168.32.34:2375/images/json
[{"Id":"sha256:6a6aaff36c0e44069f53cb24325df1ab94ed1f8728fbf9d27a7dad77a0bb40e1","ParentId":"sha256:8bb55b6d05b4ad4b28f88d85d924c70456ba2154143cba35dd7941f225856b63","RepoTags":["harbor_log:latest"],"RepoDigests":null,"Created":1471476367,"Size":187937470,"VirtualSize":187937470,"Labels":{}},{"Id":"sha256:97701402d89b48ad96d546e2f6d31d85c0dfa14b62fc2d198df683203e316487","ParentId":"","RepoTags":["sonarqube:latest"],"RepoDigests":["sonarqube@sha256:88845581b9d2ece8822c610f3430769d638298784a421186fe41850a7311bd31"],"Created":1470946631,"Size":790910817,"VirtualSize":790910817,"Labels":{}},{"Id":"sha256:f8d79ba03c00bbcd8079cf05b7526ac8f4f422744aad8c3747a29a38ed8c4a41","ParentId":"","RepoTags":["ubuntu:latest"],"RepoDigests":["ubuntu@sha256:8e2324f2288c26e1393b63e680ee7844202391414dbd48497e9a4fd997cd3cbf"],"Created":1470937589,"Size":126368859,"VirtualSize":126368859,"Labels":{}},{"Id":"sha256:ff60113363279ed0eb02aadd3149368b414dcf9baa4d3ce3c1fc8b6f4a03875e","ParentId":"","RepoTags":["ubuntu:14.04"],"RepoDigests":["ubuntu@sha256:ef500a237fb51cea075b270d811601c7226097f61b34a8ed4b4aa4e350a2c66d"],"Created":1470937563,"Size":187935394,"VirtualSize":187935394,"Labels":{}},{"Id":"sha256:ddb795388d57a4e04872558c9bf9a8a16bd0fd86421575daadedc80ad4492db5","ParentId":"","RepoTags":["elasticsearch:latest"],"RepoDigests":["elasticsearch@sha256:6eecc2f2878a05bfc7a8f01e2b8f2f2ce8e5c3adb0799c8ef15248dbf1bb7815"],"Created":1470936135,"Size":345057490,"VirtualSize":345057490,"Labels":{}},{"Id":"sha256:2baf469627a99bf5391b9787e24c6cfddb501f42af87438958d3c2eb15d937d1","ParentId":"","RepoTags":["logstash:latest"],"RepoDigests":["logstash@sha256:5c8bcc7785eedf69043ec758d72fc3edc3a6a965067c87084168fff0eb534644"],"Created":1470856281,"Size":461494743,"VirtualSize":461494743,"Labels":{}},{"Id":"sha256:741f9784699093113c250d6669f9f61e22adfb8cce058bb5e7fa15ab6f497cff","ParentId":"","RepoTags":["kibana:latest"],"RepoDigests":["kibana@sha256:a32096e588ba49b87fd2e146d4d60aecb620219006afea1aa55e44528d127fa2"],"Created":1470263992,"Size":297003643,"VirtualSize":297003643,"Labels":{}},{"Id":"sha256:2b8fd9751c4c0f5dd266fcae00707e67a2545ef34f9a29354585f93dac906749","ParentId":"","RepoTags":["busybox:latest"],"RepoDigests":["busybox@sha256:a59906e33509d14c036c8678d687bd4eec81ed7c4b8ce907b888c607f6a1e0e6"],"Created":1466724217,"Size":1092588,"VirtualSize":1092588,"Labels":{}},{"Id":"sha256:0d409d33b27e47423b049f7f863faa08655a8c901749c2b25b93ca67d01a470d","ParentId":"","RepoTags":["nginx:latest"],"RepoDigests":["nginx@sha256:0fe6413f3e30fcc5920bc8fa769280975b10b1c26721de956e1428b9e2f29d04"],"Created":1464804059,"Size":182735995,"VirtualSize":182735995,"Labels":{}}]
[root@host34 system]#
  • 1
  • 2
  • 3

注意点:设定之后,DOCKER_HOST也需要设定,不然正常的docker cli无法正常执行。

[root@host34 system]# export DOCKER_HOST=tcp://192.168.32.34:2375
[root@host34 system]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
harbor_log          latest              6a6aaff36c0e        3 days ago          187.9 MB
sonarqube           latest              97701402d89b        9 days ago          790.9 MB
ubuntu              latest              f8d79ba03c00        9 days ago          126.4 MB
ubuntu              14.04               ff6011336327        9 days ago          187.9 MB
elasticsearch       latest              ddb795388d57        9 days ago          345.1 MB
logstash            latest              2baf469627a9        10 days ago         461.5 MB
kibana              latest              741f97846990        2 weeks ago         297 MB
busybox             latest              2b8fd9751c4c        8 weeks ago         1.093 MB
nginx               latest              0d409d33b27e        11 weeks ago        182.7 MB
[root@host34 system]#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

取得container list

没有container时,取得空的列表

[root@host34 system]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
[root@host34 system]#
[root@host34 system]# curl http://192.168.32.34:2375/containers/json
[]
[root@host34 system]#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

启动一个container

[root@host34 system]# docker run -d nginx
7736b16a2b78a420cdff1a5882579a071f55543f54d10856a2a06e20eca61d02
[root@host34 system]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
7736b16a2b78        nginx               "nginx -g ‘daemon off"   9 seconds ago       Up 5 seconds        80/tcp, 443/tcp     thirsty_jang
[root@host34 system]#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

确认结果

[root@host34 system]# curl http://192.168.32.34:2375/containers/json
[{"Id":"7736b16a2b78a420cdff1a5882579a071f55543f54d10856a2a06e20eca61d02","Names":["/thirsty_jang"],"Image":"nginx","ImageID":"sha256:0d409d33b27e47423b049f7f863faa08655a8c901749c2b25b93ca67d01a470d","Command":"nginx -g ‘daemon off;‘","Created":1471751666,"Ports":[{"PrivatePort":443,"Type":"tcp"},{"PrivatePort":80,"Type":"tcp"}],"Labels":{},"State":"running","Status":"Up 52 seconds","HostConfig":{"NetworkMode":"default"},"NetworkSettings":{"Networks":{"bridge":{"IPAMConfig":null,"Links":null,"Aliases":null,"NetworkID":"839a3e2f0e9c49cfa8e12c5eef8916ba85940d41ac43b81601366c63c70441b3","EndpointID":"d288b3f97d794e2a94bf14b8d233614116245cbfa3558bb780120049d75560e3","Gateway":"172.17.0.1","IPAddress":"172.17.0.2","IPPrefixLen":16,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"MacAddress":"02:42:ac:11:00:02"}}},"Mounts":[]}]
[root@host34 system]#
  • 1
  • 2
  • 3

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

原文地址:https://www.cnblogs.com/firsttry/p/10294156.html

时间: 2024-10-14 00:13:47

Docker 1 12新功能探索(8) Remote Api 1 24的相关文章

Docker 1 12新功能探索(7) 服务编排三剑客简单总结

docker内置编排功能和目前成熟的编排工具相比可能还略显弱势,但是毕竟它是docker原生态的工具,占有地利的得天独厚的优势.同时目前内置swarm/node/service"三剑客"所组成的组合也能对普通的编排和应用场景提供足够的支持.本文将对docker1.12中这三小件进行简单总结. docker swarm 操作 详细说明 init 初期化集群 join 以node(worker)或者manager的身份加入集群 join-token 管理join-token update

Docker 1 12新功能探索(9) network基础

docker1.12中的network功能作了一定改进, 但是关于network应该如何使用,docker中的网络模型是如何设计的,当我们在run起来一个container而全然没有意识到network的时候,docker是怎样处理的,在这篇文章中,我们回去尝试一探究竟. docker1.12有关network的特性增加 特性 Built-in Virtual-IP based internal and ingress load-balancing using IPVS Routing Mesh

Docker 1 12新功能探索(4) 1分钟创建集群

在这篇文章里面我们将会通过创建一个极其简单的3个节点的集群来学习一下docker swarm 模式的使用方法.这个1.12版本中最引人关注的部分到底使用的感觉如何.因为没有在大型的生产环境中进行严格的比较,单从研究性质或者小规模的集群的创建的感觉来说和kubernetes的集群创建不相上下,使用方便,在准备妥当的情况下,手速快的朋友1分钟之内完全能够创建完毕. 事前确认 [[email protected] ~]# docker info |egrep 'Manager|Version' WAR

XenApp/XenDesktop 7.12新功能LHC解读

在今天,Citrix发布了期待已久的XenApp/XenDesktop新版本7.12,在7.12中有许多值得期待的新功能(访问Citrix edocs查看7.12文档).其中,本文将在此处解读新功能:Local Host Cache,简称LHC,中文名为本地主机缓存.虽然我们中的许多人都熟悉XenApp 6.5中的LHC功能,但那是基于IMA管理架构下的LHC.作为FMA管理架构下的LHC,和IMA管理架构下的LHC是不同的架构,下面我们就来说说这些关于LHC的内容. 一.IMA架构简述 IMA

TFS 2015 Update 2功能探索

微软刚刚发布了TFS 2015 update 2的测试包,https://blogs.msdn.microsoft.com/bharry/2016/02/10/team-foundation-server-2015-update-2-rc-1-is-available/. 相对Update 1,这次更新包含了很多用户期待的功能,作者第一时间下载更新了自己的系统,并与大家分享经验. 1. 升级TFS 2015.1到Update 2 Update 2的安装过程与之前的版本一样,安装过程非常简单,加载

Windows 10 20H1 2004新功能

Windows 10的年度更新版本20H1即将问世. 目前可以从insider preview渠道中获得.这个版本中看上去对搜索功能做了不小的改进.包括搜索的磁盘占用率以及搜索的一些展示方式. 其它的一些改进包括 Windows Subsystem for Linux的改进 https://www.cnblogs.com/qishine/p/12430933.html DirectX 12新功能预览 安全模式中支持Windows Hello的数字密码 支持网络摄像机 支持自动重启UWP程序 Xb

Docker 1.12.0将要发布的新功能

导读 按计划,6/14 是1.12.0版本的 feature冻结 的日子,再有两个星期Docker 1.12.0也该发布了.这里列出来的新功能,都是已经合并到主分支的功能,不出意外,下一个版本的Docker应该是能体验到了. 下周2016 DockerCon也该开始了,好像也有一场专门来讲Docker新特性的,不过在这之前,我们就可以抢先一步,浏览一下这些新功能.新特性.尤其是前两个,都是比较吸引人的功能. Swarmkit集成 前几天Docker刚刚发布了 Swarmkit ,也就是Swarm

探索Windows 8.1 Update 新功能点

Windows 8.1 Update 已经使用一段时间了,整体感觉比Windows 8.1 方便了不少,尤其是对鼠标用户来说更是进行了很多优化. 应用磁贴尺寸 在应用磁贴点击鼠标右键,有小.中.宽.大四种尺寸供用户自由调整.同时还可以将应用磁贴固定到传统任务栏上,也可以开启或关闭磁贴的Live Tile 功能. 任务栏全覆盖 在Windows 应用界面也能出现传统的任务栏,只需将鼠标移至屏幕最下方.这样一来在两个界面之间的切换是不是变得的方便了. 磁贴随处放 前面提到过可以将应用磁贴固定在任务栏

firebug更新1.12,新功能和改进解析

目前Firebug 最新版为 1.12 版,相比之前的版本又有了不少新功能和改进.几天的试用之后,我这里集中介绍下 firebug 的 1.12 更新.半年前的 1.11 版更新也引入了不少新功能,本文摘几条比较有用的放最后. 自动完成改进 新版 Firebug 对控制台的自动完成提示浮层做了改进,将 Firebug 的自己的控制台 Api 在浮层底部单独显示了出来. 网络和控制台支持多条件过滤 在"网络"和"控制台"两个面板下,默认显示的是全部内容,也可以根据顶部