1.1、Docker的介绍
|
1.2、docker的体系架构
Containerd:是一个简单的守护进程,使用runC管理容器。向Docker Engine提
供接口。
Shim:只负责管理一个容器。
runC:是一个轻量级的工具,只用来运行容器。
1.4、docker的内部组件
|
1.5、虚拟机与容器区别
|
1.6、docker 的应用场景
|
1.7、在Centos7.x安装docker
CentOS7
# 安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加Docker软件包源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 更新yum包索引
yum makecache fast
# 安装Docker CE
yum install docker-ce -y
# 启动
systemctl start docker
# 卸载
yum remove docker-ce
rm -rf /var/lib/docker
官方安装文档:
https://docs.docker.com/engine/installation/linux/docker-
ce/centos/#docker-ee-customers
1.8、镜像加速
|
1.9、镜像与容器的关系
|
2.0、存储驱动
2.1、镜像命令
2.1、查看版本
|
2.2、查看帮助
|
2.3、查看镜像分层
|
2.4、查看镜像的详细信息
|
2.5、下载镜像
|
2.6、删除镜像
|
2.7、给镜像打tag
|
2.8、导出镜像
|
2.9、导入镜像
|
3.0、运行一个容器
|
3.1、导出一个正在运行的容器(备注:导出后就变成了一个镜像文件)
|
3.2、导入镜像
|
3.1、查看容器命令
|
3.2、创建容器常用选项
3.3、创建一个容器
|
3.4、进入容器命令
|
3.5、运行容器,映射端口80到8088上面。
|
3.6、查看容器的日志(备注:日志会输出到控制台)
|
3.7、--restart=always:指的是服务退出,始终会重启容器
|
[root@ansible-server ~]# docker rmi $(docker images -q)
|
3.8、限制容器使用CPU资源
1 2 3 4 5 6 |
|
3.9、限制内存使用率
|
4.0、查看容器资源利用率
|
4.1、 查看所有容器IP地址
|
4.1、删除容器和镜像
|
4.2、进入容器
|
4.3、commit :把容器打包成镜像
|
4.4、把文件从电脑中拷贝到容器中
|
[root@ansible-server ~]# docker restart dreamy_dirac
dreamy_dirac
4.5、查看容器日志
|
4.6、查看容器负载情况
|
4.7、查看容器的端口
|
4.8、update
|
示例:
|
5.1、将Docker主机数据挂载到容器
1、保证容器中的数据不丢失
2、原来容器中的数据,不能容器挂了,数据就拿不出来了。
挂载数据的三种方式:
1、volumes (常用)
[root@ansible-server ~]# ls /var/lib/docker/volumes/
metadata.db
#查看帮助
|
2、bind mounts (常用)
挂载在宿主机上面
3、tmpfs (不常用)
tmpfs是一种基于内存的文件系统,也叫临时文件系统,tmpfs可以使用RAM,也可以使用swap分区存储。它并不是一个块设备,只要安装就可以使用。是基本RAM的文件系统。
5.2、创建挂载卷,并挂载到容器中
|
|
5.3、演示容器删除了,数据卷的数据还在
(备注:如果在容器中删除了数据,那么本地也会跟着删除)
|
5.4、运行容器,增加端口,再通过本地数据卷中写入一个a.html的文件。再用浏览器访问他看是否可以打开
|
5.5、实现数据卷共享他们的数据
|
5.6、没有指定数据卷,他默认会创建数据库
|
|
5.7、通过bind挂载数据卷
示例:
|
#bind的应用场景
|
6.1、搭建LNMP网站平台实战
|