开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第8天,点击查看活动详情
Docker Container 容器虚拟化技术的一种实现,Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
在学习Docker之前要了解一下它的优势:服务器上快速部署、高效虚拟化、节省开支、快速迁移和扩展。
查看linux服务器centos版本:
cat /etc/redhat-release
安装
CentOS官方版安装:
yum install --y docker
查看版本号
docker version
这里要注意的是我们在启动docker的时候,一定要先关闭服务器的防火墙,使用以下命令进行关闭Linux防火墙
service firewalld stop
启动
安装好之后,执行一下docker命令进行启动,
systemctl start docker
停止运行docker
docker stop docker的id
重新启动docker
docker start docker的id
创建并启动一个centos7系统的镜像,睡眠1000毫秒
docker run centos:7 sleep 1000
查看docker中centos7的文件目录
docker run -t -i centos:7 ls
进入docker容器
docker run -t -i centos:7 bash
创建Docker镜像
所有的docker 镜像都是一个 基础镜像(可以理解为依托点),在基础镜像的层次和基础之上,所做的修改以及增加的功能,都会生成新的一层。
方式一:
docker commit命令
方式二:
Dockerfile
Dockerfile中的每个指令都会创建一个新的镜像层,镜像层将被缓存和复用。当Dockerfile的指令修改了,复制的文件变化了,或者构建镜像时指定的变量不同了,对应的镜像层缓存就会失效,某一层的镜像缓存失效之后,它之后的镜像层缓存都会失效。
镜像层是不可变的,如果在某一层中添加一个文件,然后在下一层中删除它,则镜像中依然会包含该文件。