docker学习笔记3 容器 container

容器从镜像(images)中来,可以想象成:images是光碟,用光碟给机器装系统、装软件,装好的app就是容器(container)

--------------------------------------------------------------------------

docker run   创建并启动容器,后台会进行以下操作:

1、检查本地是否有image,没有的话会自动去下载,内网的机器就只能从harbor里下载好;

2、利用image创建一个容器,并启动该容器;

3、分配一个文件系统给容器,并在只读的镜像层外挂载一层可读写层,相当于mount一个目录给容器,所以docker的存储要设计好,否则很容易就存储爆掉;

4、从宿主机配置的网桥接口中桥接一个虚拟接口给容器;

5、从网桥的地址池中分配一个IP给容器,大部分是172开头;

6、执行用户指定的应用程序;

7、执行完毕后容器自动终止。

 

------------------------------------------------------------------------------

容器的命令都以docker container开头,也可以简写,比如docker container ps -a = docker ps -a,但是更清楚一些,新手更明白一些,写脚本也建议这么写。同理,image的命令都以docker image 开头。。。。 

从安全的角度出发,带container更安全一些,建议写脚本的时候带上,更直观的指导这些命令用于操作容器。

docker container ps -a   可以看到所有运行、停止的容器

docker container start 容器ID    启动一个已经存在容器

docker container stop 容器ID    停止一个正在运行的容器,停不掉就用kill

docker container rm 容器ID       删除一个已经停止的容器

docker container logs 容器ID      看容器的输出,但只输出一次,用起来不是很方便

docker container run 镜像名或镜像ID

 

docker container run -it  镜像名或镜像ID /bin/bash        -t让docker分配一个未终端并绑定到容器的标准输入上,-i则让容器的标准输入保持打开;/bin/bash用的是镜像里的/bin/bash作为bash命令,这个在image里面必须要有。这个命令可以运行容器了以后,自动就进入容器内部,是进入容器的一种方法。exit出来以后,容器就停止了,处于exited状态。

docker container run -d 镜像名或镜像ID      以守护模式(daemon,或者说,在后台运行)运行容器

像centos ubuntu之类的OS baseimage,启动的时候:  docker container -it -d 镜像名或镜像ID              这样才能把OS启动起来,并且一直运行不exit。但容器的理念是:一个容器,一个服务。OS baseimage更多的是用来做新镜像用,不需要长时间运行,一般是进去baseimage,做变更,然后commit一个新image。

 

-------------------------------------------------------------------

docker container exec -it 容器ID  /bin/bash         进入一个正在运行中的容器,-it保持标准输入并分配伪终端,/bin/bash和上面的意思一样,是进入容器的推荐方式。

-------------------------------------------------------------------

导出容器,运行、不运行状态的容器都可以导出,便于迁移。导出的是容器快照。

docker container export -o xxx.tar  容器ID

导入容器,其实是导入容器相关的镜像。将导出的tar文件传到另一个环境,先导成image,再从image启动容器。

docker  image import xxx.tar 镜像名:tag

docker image import导入容器快照,和docker image load导入镜像存储文件,效果差不多,但是容器快照文件会少历史记录和元数据信息,体积小,另一个信息更全一些,体积也更大。

 

转载于:https://www.cnblogs.com/alpha118/p/10334051.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值