实战-centos上二进制离线安装docker-成功测试-20220804
实战:centos上二进制安装docker(成功测试) -2022.8.4
实验环境
1台centos7.7 1908虚机;(nat模式)
主机名 | ip | 系统版本 |
---|---|---|
docker-binary | 172.29.9.11 | CentOS 7.7.1908 |
- 注意:个人本次实验是从之前的初始化做好的centos7.7快照恢复过来的。
实验软件
百度云位置:docker-18.06.3-ce.tgz
0、基础环境准备
(1)关闭且禁用firewalld、NetworkManager、selinux服务
bash
systemctlstopfirewalld&systemctldisablefirewalldsystemctlstopNetworkManagersystemctldisableNetworkManagersetenforce0sed-is/SELINUX=enforcing/SELINUX=disabled//etc/selinux/config
(2)配置网络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
(3)配置主机名
bash
[root@hg ~]# hostnamectl --static set-hostname docker-binary[root@hg ~]# exec bash[root@docker-binary ~]#
1、下载二进制安装包
bash
[root@docker-binary ~]# wget https:docker-18.06.3-ce.tgz[root@docker-binary ~]# tar xf docker-18.06.3-ce.tgz [root@docker-binary ~]# cd docker[root@docker-binary docker]# lsdockerdocker-containerddocker-containerd-ctrdocker-containerd-shimdockerddocker-initdocker-proxydocker-runc[root@docker-binary docker]# cp */usr/bin/
3、生成docker.service服务启动文件
bash
cat>/usr/lib/systemd/system/docker.service<<EOF[Unit]Description=Docker Application Container EngineDocumentation=https:After=network-online.target firewalld.serviceWants=network-online.target[Service]Type=notify# the default is not to use systemd for cgroups because the delegate issues still# exists and systemd currently does not support the cgroup feature set required# for containers run by dockerExecStart=/usr/bin/dockerd -H tcp:ExecReload=/bin/kill -s HUP $MAINPID# Having non-zero Limit*s causes performance problems due to accounting overhead# in the kernel. We recommend using cgroups to do container-local accounting.LimitNOFILE=infinityLimitNPROC=infinityLimitCORE=infinity# Uncomment TasksMax if your systemd version supports it.# Only systemd 226 and above support this version.#TasksMax=infinityTimeoutStartSec=0# set delegate yes so that systemd does not reset the cgroups of docker containersDelegate=yes# kill only the docker process,not all processes in the cgroupKillMode=process# restart the docker process if it exits prematurelyRestart=on-failureStartLimitBurst=3StartLimitInterval=60s[Install]WantedBy=multi-user.targetEOF
4、启动docker服务并设置开机启动
bash
[root@docker-binary ~]# systemctl daemon-reload[root@docker-binary ~]# systemctl start docker[root@docker-binary ~]# systemctl enable dockerCreatedsymlinkfrom/etc/systemd/system/multi-user.target.wants/docker.serviceto/usr/lib/systemd/system/docker.service.[root@docker-binary ~]#
5、验证docker是否安装成功?
6、配置镜像加速
bash
mkdir-p/etc/dockertee/etc/docker/daemon.json<<-'EOF'{"registry-mirrors":["https:}EOFsystemctldaemon-reloadsystemctlrestartdocker
7、启动一个nginx容器,并验证效果:(符合预期效果)
bash
[root@docker-binary ~]# docker pull nginxUsingdefaulttag:latestlatest:Pullingfromlibrary/nginx69692152171a:Pullcomplete30afc0b18f67:Pullcomplete596b1d696923:Pullcompletefebe5bd23e98:Pullcomplete8283eee92e2f:Pullcomplete351ad75a6cfa:PullcompleteDigest:sha256:6d75c99af15565a301e48297fa2d121e15d80ad526f8369c526324f0f7ccb750Status:Downloadednewerimagefornginx:latest[root@docker-binary ~]# docker imagesREPOSITORYTAGIMAGEIDCREATEDSIZEnginxlatestd1a364dc548d2daysago133MB[root@docker-binary ~]# docker run -d -p 80:80 nginxf6788d53c01978b1520956bce07ed2a9ab5cc042189d13174eead774bedb7178[root@docker-binary ~]# docker psCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMESf6788d53c019nginx"/docker-entrypoint.…"7secondsagoUp6seconds0.0.0.0:80->80/tcpromantic_jepsen[root@docker-binary ~]# docker exec -it f6788d53c019 bashroot@f6788d53c019:/#echo"<h1>Linux39</h1>">/usr/share/nginx/html/index.htmlroot@f6788d53c019:/#