#0.开始
Docker 有两个程序:
1. 守护进程**:**管理所有的集装箱(containers)
2. 客户进程**:**扮演着远程控制守护进程的角色
在绝大多数的系统中,这两个进程就在同一台主机上。
####version 命令
这个命令可以测试哪个守护进程在运行,而且是否连接。如果获知哪个版本正在运行,那docker就配置好了。
`[sudo] docker version //(docker是以root身份运行的,如果把自己加到docker用户组里就可以省去sudo)`
运行结果
```
$ docker version
Client version: 0.11.1
Client API version: 1.11
Go version (client): go1.2.1
Git commit (client): fb99f99
Server version: 0.11.1
Server API version: 1.11
Git commit (server): fb99f99
Go version (server): go1.2.1
```
####search 命令
最好的开始就是先从别的地方获取一个集装箱的镜像。所有的集装箱的镜像在[DockerIndex](https://index.docker.io/)上都有,这是一个存放镜像的地方。(作为一个纯技术网站,这个地址在拉取镜像的时候被墙了。)
`[sudo] docker search tutorial`
```
$ docker search tutorial
NAME DESCRIPTION STARS OFFICIAL TRUSTED
learn/tutorial 3
namin/io.livecode.ch interactive programming tutorials, powered... 1 [OK]
sfilipov/rails-tutorial 0 [OK]
zqhxuyuan/tutorial 0
mzdaniel/buildbot-tutorial 0
jbarbier/tutorial1
```
####pull 命令
镜像都是以**username/repository**的形式命名的,一些特别的可信的镜像比如ubuntu这个镜像可以直接以名字**repository**的形式命名。
拉取镜像, 执行 `docker pull learn/tutorial` 就能获取该镜像。但是国内被墙了,挂个vpn,或者跳去看后面,从本地导入的方法**import** 和 **load**。
####run 命令
可以把集装箱想象成一个放在盒子里运行的进程,这个盒子包含了所有该进程需要的环境,有完整的文件系统,完整的操作系统库,完整的shell等等,但是默认都是没有运行的。
`docker run learn/tutorial echo "hello world"`
就会在终端中看到hello world
####在集装箱上进行安装
我们需要在集装箱上安装ping,因为镜像是基于ubuntu的,所以可以在集装箱上使用命令`apt-get install -y ping`。虽然集装箱在运行完程序后就会结束,但是在上面做的改变不会被丢弃。
`docker run learn/tutorial apt-get install -y ping`
####保存你的更改
在运行一段命令后,你可能想保存你的修改,那么docker能够从这些更改开始开启集装箱。对于docker来说,所有的进程的保存叫做*committing*,commit 简单地保存新旧镜像的区别。结果产生新的一层。
首先使用`docker ps -l`
会显示执行的改变,然后通过commit 来提交改变
`docker commit 698 name/res` name 和 res 都可以随便命名的。
####运行你自己的镜像
如果你完成了上面的环节,那么你应该拥有了一个包含ping的镜像。现在可以用这个镜像来运行ping了。
`docker run name/res ping google.com`
####检查自己的镜像
`docker ps` 可以列出运行中的集装箱,`docker inspect id`可以获得集装箱的所有信息。
`docker inspect efe` efe是某个集装箱的id
####提交镜像
`docker push name/res` 就可以
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com