1.什么是Docker?
docker叫做虚拟化技术, 也叫作容器化技术.
简单来说就是服务器版, 高性能版的linux系统(Ubuntu和centos7以上版本才能运行docker)的虚拟机.
2.Docker作用
可以通过docker虚拟化技术, 来在一台真实的服务器上构建很多, 虚拟服务器, 因为一般在企业一台真实服务器分配给一个小组, 硬件由于没有合理利于, 造成浪费
通过虚拟化技术, 将一台服务器, 构建好多容器, 分配给不同的开发组使用, 不同的开发组感觉都独自拥有了一台服务器.可以更合理的利用硬件的性能。
优势:1.可以快速上手新技术,把精力放在业务上而非安装和配置服务器;
2.快速搭建开发环境所需的各种服务器程序。
3.vmWare和docker区别:
vmWare:
windows版, 只能在windows上使用
性能差, 分配给虚拟机的内存, cpu, 硬盘等资源会独享
vmWare可以虚拟出 windows, linux, Mac等各种系统
Docker:
linux版, 只能在linux系统上使用
性能高, 因为分配给docker容器的内存, cpu, 硬盘等资源, 共享使用, 归cpu统一调度使用.
只能虚拟出linux系统
vmware已移动: 保证网卡的mac地址和ip不变
vmware已复制: 这个选项会重置网卡mac地址, 和ip地址,一般需要装另一台虚拟机的时候选这个,用来防止ip冲突。
4.安装Docker
Docker官方建议在Ubuntu中安装,因为Docker是基于Ubuntu发布的,而且一般Docker出现的问题Ubuntu是最先更新或者打补丁的。在很多版本的CentOS中是不支持更新最新的一些补丁包的。
由于我们学习的环境都使用的是CentOS,因此这里我们将Docker安装到CentOS上。注意:这里建议安装在CentOS7.x以上的版本,在CentOS6.x的版本中,安装前需要安装其他很多的环境而且Docker很多补丁不支持更新。
请直接挂载课程配套的Centos7.x镜像
(1)卸载yum安装的旧版docker
#卸载yum安装的旧版docker
yum remove docker docker-common docker-selinux docker-engine
yum remove docker-ce docker-ce-cli containerd.io
#卸载rpm安装的旧版docker
rpm -e docker-ce docker-ce-cli containerd.io
#查看数据目录命令"docker info",在结果中找"Docker Root Dir"。这将删除所有相关数据,包括容器、镜像以及存储卷等。请注意,这将不可逆转地删除数据。
rm -rf /var/lib/docker
#查看docker相关软件包的文件路径,并把查出来的包都删掉
rpm -ql docker-ce
#删除上一步查出来的包
rm -rf包
(2)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
(3)设置yum源
#阿里云源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#Docker官方库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
(4)查看docker可用版本
yum list docker-ce --showduplicates | sort -r
(5)安装docker
yum install -y docker-ce-23.0.5 docker-ce-cli-23.0.5 containerd.io
(6)查看docker安装信息
#查看docker版本
docker -v
#查看docker安装信息
rpm -qi docker-ce
(7)设置docker的镜像仓库为阿里云
vi /etc/docker/daemon.json
daemon.json的内容如下
{
"registry-mirrors": ["https://xb2s49ki.mirror.aliyuncs.com"]
}
(8) 重启docker
systemctl enable docker
systemctl daemon-reload
#镜像仓库必须重启docker才生效
systemctl restart docker
(9) 验证查看docker镜像仓库是否为阿里云仓库
docker info