ToB企服应用市场:ToB评测及商务社交产业平台

标题: Docker 在线安装与离线安装 [打印本页]

作者: 南飓风    时间: 2022-12-30 00:19
标题: Docker 在线安装与离线安装
在线安装参考的是 Docker 官方文档(现在应该没有“Install on CentOS”了)。
离线安装使用的包是学校教学发放的。
Docker 在线安装

系统要求
  1. # CentOS 7 满足最低的内核要求,内核版本至少3.10
  2. # 查看内核版本 与 发行版本
  3. [root@localhost ~]# uname -r
  4. 3.10.0-862.el7.x86_64
  5. [root@localhost ~]# cat /etc/redhat-release
  6. CentOS Linux release 7.5.1804 (Core)
复制代码
存储源
  1. ## 换源
  2. # 下载阿里共享源
  3. [root@localhost ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  4.   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
  5.                                  Dload  Upload   Total   Spent    Left  Speed
  6. 100  2523  100  2523    0     0   1426      0  0:00:01  0:00:01 --:--:--  1427
  7. # 下载 epel 源
  8. [root@localhost ~]# curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
  9.   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
  10.                                  Dload  Upload   Total   Spent    Left  Speed
  11. 100   664  100   664    0     0   1131      0 --:--:-- --:--:-- --:--:--  1133
  12. [root@localhost ~]# yum clean all
  13. [root@localhost ~]# yum repolist
  14. ## 设置 docker 源
  15. # 安装 yum-utils
  16. [root@localhost ~]# yum -y install yum-utils
  17. # 利用 yum-utils 提供的工具添加 docker-ce.repo
  18. [root@localhost ~]# yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
  19. Loaded plugins: fastestmirror
  20. adding repo from: https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
  21. grabbing file https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
  22. repo saved to /etc/yum.repos.d/docker-ce.repo
复制代码
什么是epel ?
如果既想获得 RHEL 的高质量、高性能、高可靠性,又需要方便易用(关键是免费)的软件包更新功能,那么 Fedora Project 推出的 EPEL(Extra Packages for Enterprise Linux)正好适合你。EPEL(http://fedoraproject.org/wiki/EPEL) 是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。
什么是 yum-utils ?
管理repository及扩展包的工具 (主要是针对repository)
查看软件版本
  1. ## 因为 repo 源过多,所以存在多个版本
  2. # 列出所有 docker-ce
  3. [root@localhost ~]# yum list docker-ce --showduplicates | sort
  4. Available Packages
  5. * base: mirrors.aliyun.com
  6. docker-ce.x86_64            17.03.0.ce-1.el7.centos             docker-ce-stable
  7. docker-ce.x86_64            17.03.1.ce-1.el7.centos             docker-ce-stable
  8. docker-ce.x86_64            17.03.2.ce-1.el7.centos             docker-ce-stable
  9. docker-ce.x86_64            17.03.3.ce-1.el7                    docker-ce-stable
  10. docker-ce.x86_64            17.06.0.ce-1.el7.centos             docker-ce-stable
  11. docker-ce.x86_64            17.06.1.ce-1.el7.centos             docker-ce-stable
  12. docker-ce.x86_64            17.06.2.ce-1.el7.centos             docker-ce-stable
  13. ...
  14. # 列出所有 docker-ce-cli
  15. [root@localhost ~]# yum list docker-ce-cli --showduplicates | sort
  16. Available Packages
  17. * base: mirrors.aliyun.com
  18. docker-ce-cli.x86_64              1:18.09.0-3.el7               docker-ce-stable
  19. docker-ce-cli.x86_64              1:18.09.1-3.el7               docker-ce-stable
  20. docker-ce-cli.x86_64              1:18.09.2-3.el7               docker-ce-stable
  21. docker-ce-cli.x86_64              1:18.09.3-3.el7               docker-ce-stable
  22. docker-ce-cli.x86_64              1:18.09.4-3.el7               docker-ce-stable
  23. ...
  24. # 列出所有 containerd.io
  25. [root@localhost ~]# yum list containerd.io --showduplicates | sort
  26. Available Packages
  27. * base: mirrors.aliyun.com
  28. containerd.io.x86_64            1.2.0-1.2.beta.2.el7            docker-ce-stable
  29. containerd.io.x86_64            1.2.0-2.0.rc.0.1.el7            docker-ce-stable
  30. containerd.io.x86_64            1.2.0-2.2.rc.2.1.el7            docker-ce-stable
  31. containerd.io.x86_64            1.2.0-3.el7                     docker-ce-stable
  32. containerd.io.x86_64            1.2.10-3.2.el7                  docker-ce-stable
  33. ...
复制代码
安装docker-ce
  1. # 挑选版本进行安装 格式:包名-版本号
  2. [root@localhost ~]# yum -y install docker-ce-18.09.9 docker-ce-cli-18.09.9 containerd.io
  3. Installed:
  4.   containerd.io.x86_64 0:1.4.12-3.1.el7                 docker-ce.x86_64 3:18.09.9-3.el7                 docker-ce-cli.x86_64 1:18.09.9-3.el7
  5. Dependency Installed:
  6.   audit-libs-python.x86_64 0:2.8.5-4.el7               checkpolicy.x86_64 0:2.5-8.el7            container-selinux.noarch 2:2.119.2-1.911c772.el7_8
  7.   libcgroup.x86_64 0:0.41-21.el7                       libseccomp.x86_64 0:2.3.1-4.el7           libsemanage-python.x86_64 0:2.5-14.el7
  8.   policycoreutils-python.x86_64 0:2.5-34.el7           python-IPy.noarch 0:0.75-6.el7            setools-libs.x86_64 0:3.3.8-4.el7
  9. Dependency Updated:
  10.   audit.x86_64 0:2.8.5-4.el7                                  audit-libs.x86_64 0:2.8.5-4.el7              libselinux.x86_64 0:2.5-15.el7
  11.   libselinux-python.x86_64 0:2.5-15.el7                       libselinux-utils.x86_64 0:2.5-15.el7         libsemanage.x86_64 0:2.5-14.el7
  12.   libsepol.x86_64 0:2.5-10.el7                                policycoreutils.x86_64 0:2.5-34.el7          selinux-policy.noarch 0:3.13.1-268.el7_9.2
  13.   selinux-policy-targeted.noarch 0:3.13.1-268.el7_9.2
  14. # 启动并设置自启动 docker
  15. [root@localhost ~]# systemctl enable --now docker
  16. Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
  17. #检查版本是否安装成功
  18. [root@localhost ~]# docker info
  19. Containers: 0
  20. Running: 0
  21. Paused: 0
  22. Stopped: 0
  23. Images: 0
  24. Server Version: 18.09.9
  25. ...
复制代码
解决 WARNING!! 警告问题
  1. [root@localhost ~]# docker info
  2. ...
  3. WARNING: bridge-nf-call-iptables is disabled                # 出现警告(最后两行)
  4. WARNING: bridge-nf-call-ip6tables is disabled
  5. #编辑 sysctl.conf 文件并添加以下内容
  6. [root@localhost ~]# vi /etc/sysctl.conf
  7. net.ipv4.ip_forward = 1
  8. net.bridge.bridge-nf-call-ip6tables = 1
  9. net.bridge.bridge-nf-call-iptables = 1
  10. [root@localhost ~]# sysctl -p
  11. net.ipv4.ip_forward = 1
  12. net.bridge.bridge-nf-call-ip6tables = 1
  13. net.bridge.bridge-nf-call-iptables = 1
  14. [root@localhost ~]# systemctl restart docker
  15. [root@localhost ~]# docker info                                                # 警告消失
复制代码
Docker 离线安装

通过打好的包,不联网的情况安装
准备一台 CentOS7 的虚拟机
基本配置

内核升级

uname -a :查看内核版本。----- 3.10
yum upgrade -y:升级操作系统内核。
reboot 重启
之后升级为 3.10.0-1062,网络源又会重新回来!删掉/移走都可以~
内核优化参数配置

modprobe br_netfilter  加载网络防火墙模块
$ sysctl -a | grep ip_forward   查看
$ net.ipv4.ip_forward = 0   数据转发功能
$ sysctl -a | grep nf-call    查看
$ net.bridge.bridge-nf-call-ip6tables = 1   ipv6 桥接转发
$ net.bridge.bridge-nf-call-iptables = 1             ipv4 桥接转发
#上面的查看是为了方便复制 ~ 然后写入配置文件
vi /etc/sysctl.conf       Linux内核优化参数配置文件
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
sysctl -p   加载以上三行参数
安装

yum -y install docker-ce docker-ce-cli containerd.io
systemctl enable --now docker
检查

docker version:查看版本
docker info:查看详细信息
systemctl status docker:服务端
docker --help:客户端

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4