我是靠谱客的博主 英俊啤酒,最近开发中收集的这篇文章主要介绍【DevOps】CentOS8.2 安装 Docker(19.03.13)安装环境安装Docker参考资料,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

安装环境


系统版本

通过 cat /etc/redhat-release 查看,系统版本为:

CentOS Linux release 8.2.2004 (Core)

内核版本

通过 cat /proc/version 查看,内核版本为:

Linux version 4.18.0-193.el8.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri May 8 10:59:10 UTC 2020

ps:uname -a 或 uname -r 可以直接查看内核版本号。

安装工具 DNF

从 centos7开始,DNF 成为了默认的软件包管理器,虽然 yum 仍然是可用的,但是 DNF 或许是以后的趋势,所以本文我们使用 DNF进行安装,DNF 的命令 大部分和 yum 一样。

顺便科普一下:使用 DNF 代替 yum 是为了解决 yum 性能差、内存占用过多、依赖解析速度变慢 等问题;

DNF 使用 libsolv 进行依赖解析,而 yum 由python 编写。


安装Docker


部署Kubernetes(k8s)时,为什么要关闭swap、selinux、防火墙?

不止部署k8s,许多公司在装机过程就就直接关闭了swap、selinux和防火墙

selinux,这个是用来加强安全性的一个组件,但非常容易出错且难以定位,一般上来装完系统就先给禁用了

iptables防火墙,会对所有网络流量进行过滤、转发,如果是内网机器一般都会直接关闭,省的影响网络性能,但k8s不能直接关了,k8s是需要用防火墙做ip转发和修改的,当然也看使用的网络模式,如果采用的网络模式不需要防火墙也是可以直接关闭的

swap,这个当内存不足时,linux会自动使用swap,将部分内存数据存放到磁盘中,这个这样会使性能下降,为了性能考虑推荐关掉

SWAP就不太一样了,SWAP是让你在明确的OOM和没有报错但是莫名其妙服务就不能用了之间二选一,对于集群化的服务(比如etcd)来说是挂掉一个实例和整个集群都出毛病之间二选一,一般正常人都知道该选哪个

准备工作

1、 DNF 换源
如果是一台新服务器,为了保证下载速度,我们首先将 DNF 换源为国内源,常用的有 阿里的、清华的,以阿里的为例。

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
dnf makecache
dnf repolist

2、修改 hostname

因为以后要做 k8s集群,所以最好在服务器什么都没装时,先改好 k8s集群的每个节点的名称。

hostnamectl set-hostname k8s-172

3、修改 hosts 文件

echo "192.168.10.202 k8s-172" >> /etc/hosts
# 或者
cat >> /etc/hosts << EOF
192.168.10.202
k8s-172
EOF

4、关闭交换分区(为k8s准备)

swapoff -a
sed -i 's/.*swap.*/#&/' /etc/fstab
free -h

5、关闭 selinux

# 查看 selinux 状态
sestatus # 或者 sestatus -v 或者 getenforce 
# 临时设置为 Permissive (宽松模式)
setenforce 0
# 永久关闭selinux
sudo sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
reboot

安装 Docker

1、安装必要工具

dnf install -y dnf-utils device-mapper-persistent-data lvm2

2、添加 Docker 软件源

dnf config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、更新 DNF 源

dnf makecache

4、 查看可以安装的 Docker 版本

dnf list docker-ce --showduplicates | sort -r

5、安装 Docker-CE

dnf -y install docker-ce

如果是第一次安装 Docker,会报错:

Problem: package docker-ce-3:19.03.13-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed

解决办法:

dnf -y install wget
wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
dnf -y install containerd.io-1.2.6-3.3.el7.x86_64.rpm

检查是否安装成功:

docker version

配置 与启动 Docker

1、新建 daemon.json 文件,并配置,这里主要配置了4个地方:

  • registry-mirrors :镜像改为阿里云的镜像仓库,(需要到阿里云网站申请);
  • insecure-registries :配置私有镜像仓库时,配置镜像不使用 https 传输,IP 是 私有镜像仓库的IP;
  • exec-opts :为了与 k8s 的默认驱动保持一致;
  • log :分别配置了日志的文件格式、每个容器的最大日志文件数 和 每个日志文件的最大尺寸;
mkdir -p /etc/docker
vim daemon.json
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"],
"insecure-registries": ["120.xxx.xx.174:5000"],
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "1"
}
}

2、使开机自启动,并启动 Docker

systemctl enable docker
systemctl start docker

3、查看配置是否生效

docker info
systemctl status docker -l

4、如果启动 Docker 后 修改了配置文件,则需要 使配置生效并重启 Docker

systemctl daemon-reload
systemctl restart docker

参考资料


1、通过 kubeadm 安装 k8s
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/

2、k8s 官网的 Docker 安装方法

https://kubernetes.io/zh/docs/setup/production-environment/container-runtimes/

最后

以上就是英俊啤酒为你收集整理的【DevOps】CentOS8.2 安装 Docker(19.03.13)安装环境安装Docker参考资料的全部内容,希望文章能够帮你解决【DevOps】CentOS8.2 安装 Docker(19.03.13)安装环境安装Docker参考资料所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部