实战-centos在线安装docker-成功测试-20220804
实战:centos在线安装docker-2022.8.4(成功测试)
目录
[toc]
实验环境
plain
1.虚机版本:1台Centos.7.6 1810 vmworkstation虚机;2.虚机IP:172.29.9.2 nat网络(保证可通外网) 主机名:docker;3.docker版本:20.10.8
实验软件(无)
一、基础环境配置
1、关闭且禁用firewalld、NetworkManager、selinux服务
bash
systemctlstopfirewalldsystemctldisablefirewalldsystemctlstopNetworkManagersystemctldisableNetworkManagersetenforce0sed-is/SELINUX=enforcing/SELINUX=disabled//etc/selinux/config
2、配置网络yum源(或者本地yum源)
bash
cd/etc/yum.repos.d/mkdirbackup-`date +%F`mv*!$wget-O/etc/yum.repos.d/Centos-Base.repohttp:yumcleanallyummakecacheyuminstall-ynet-toolsyuminstall-yvimyuminstall-ywgetyuminstall-ylrzsz
二、卸载旧版本docker
bash
yumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engine
三、安装必要的一些系统工具
bash
[root@docker ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
四、配置国内 docker 的 yum 源
因为默认的yum源包含docker的安装包版本真的太低了,因此这里需要特别配置国内docker的yum源:
bash
[root@docker ~]# yum-config-manager --add-repo http:#生成yum缓存,后续准备安装docker:[root@docker ~]# yum makecache
五、安装 docker-ce
1、安装 docker-ce
- yum默认安装的是最新版本的docker:
bash
[root@docker ~]#yum install -y docker-ce
- 查看当前系统已经安装的docker-ce安装包:
bash
[root@docker ~]#rpm -qa|grepdocker-ce[root@docker ~]#rpm -qa|grepcontainerd
2、启动并开机自启docker服务
注意:刚安装好docker,用docker version
查看版本时,报如下提示,是因为docker服务没启动起来起来。
- 启动并开机自启docker服务:
bash
[root@docker ~]# systemctl start docker[root@docker ~]# systemctl enable docker
3、查看docker版本
bash
[root@docker ~]#docker version #查看docker版本[root@docker ~]#docker info #查看docker详细信息
六、配置国内阿里云镜像加速器并下载镜像
Docker Hub是由Docker公司负责维护的公共镜像仓库,包含大量的容器镜像,Docker工具默认从这个公共镜像库下载镜像。
2、配置docker镜像地址
bash
#直接执行如下代码即可:mkdir-p/etc/dockertee/etc/docker/daemon.json<<-'EOF'{"registry-mirrors":["https:}EOFsystemctldaemon-reloadsystemctlrestartdocker备注:#我们在安装了docker服务后,默认在就会生成/etc/docker目录了,以上命令再次创建了/etc/docker目录,是没问题的,原来目录下的文件不会被覆盖的;
验证:
bash
在最后,可以看到镜像仓库的地址,已经改为阿里云了,原来默认镜像仓库的地址还在,但是默认会优先使用刚添加的阿里云地址的;[root@docker ~]#docker info
再下载,就可以了,可以发现下载速度贼快:
bash
[root@docker ~]#docker images[root@docker ~]#docker pull centos
七、开启网络转发功能
bash
(1)永久生效方法:[root@docker ~]# echo "net.ipv4.ip_forward =1">>/etc/sysctl.conf [root@docker ~]# sysctl -p #生效net.ipv4.ip_forward =1[root@docker ~]# cat /proc/sys/net/ipv4/ip_forward #查看,1代表开启网络路由转发功能1(2)临时生效方法:[root@docker ~]# echo 1 >/proc/sys/net/ipv4/ip_forward[root@docker ~]# cat /proc/sys/net/ipv4/ip_forward1#最终输出脚本:echo"net.ipv4.ip_forward =1">>/etc/sysctl.confsysctl-pcat/proc/sys/net/ipv4/ip_forward
八、验证:拉取一个nginx镜像运行起来并观看效果
- 拉取镜像:
bash
[root@docker ~]# docker pull nginx:1.16.1
- 查看下载好的nginx镜像:
bash
[root@docker ~]# docker images
- 运行一个docker实例:
bash
[root@docker ~]# docker run -d -p 80:80 nginx:1.16.1 #-d代表后台,宿主机端口:容器端口 先在本地查找镜像,本地不存在的话,就去官网下载(docker.hub.com),如果有配置其他yum源,就会优先到配置的yum源去拉取进行镜像602c24fa33e3a93a40899db38590f3a1287a8362a29be56328f715db7e62d869[root@docker~]#
- 查看正在运行的容器:
bash
[root@docker ~]# docker ps
- 此时在宿主机上访问这个地址,查看效果:
bash
[root@docker ~]#curl 172.29.9.2
此时再次在宿主机上刷新网页观看效果:(符合预期)
实验到此结束!
docker一键安装脚本
注意事项:
1、机器可连通外网;
2、次脚本可一键直接执行;
bash
#初始环境systemctlstopfirewalldsystemctldisablefirewalldsystemctlstopNetworkManagersystemctldisableNetworkManagersetenforce0sed-is/SELINUX=enforcing/SELINUX=disabled//etc/selinux/configyuminstall-ynet-toolsyuminstall-yvimyuminstall-ywgetyuminstall-ylrzszcd/etc/yum.repos.d/mkdirbackup-`date +%F`mv*!$cd/etc/yum.repos.d/wget-O/etc/yum.repos.d/CentOS-Base.repohttp:yumcleanallyummakecacheyumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engineyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2yum-config-manager--add-repohttp:yummakecache#yum install docker-ce -yyuminstall-yyuminstalldocker-ce-19.03.9docker-ce-cli-19.03.9containerd.io#指定需要安装的版本号systemctlstartdocker&&systemctlenabledockerdockerversiondockerinfosudomkdir-p/etc/dockersudotee/etc/docker/daemon.json<<EOF{"registry-mirrors":["https:"https:"https:"https:"https:"https:"https:"https:"https:]}EOFcat/proc/sys/net/ipv4/ip_forwardecho"net.ipv4.ip_forward =1">>/etc/sysctl.confsysctl-pcat/proc/sys/net/ipv4/ip_forwardsystemctldaemon-reloadsystemctlrestartdocker
总结
以上,就是如何在Centos上安装docker服务的完整过程了。关于docker进一步如何使用,请看后续博客,欢迎大家的阅读。