1.安装 docker 容器并配置镜像加速器

1.2.1 实验环境准备
实验环境: rockylinux8.8    可以去官网下载 下载 Rocky | Rocky Linux
主机名: xuegod63
主机 ip: 192.168.1.63(这个 ip 大家可以根据自己所在环境去配置,配置成静态 IP)
2g 内存、2vCPU、50G 硬盘

1、配置静态 ip 和主机名
1)把 ip 配置成静态的

配置文件 /etc/sysconfig/network-scripts/ifcfg-ens33
内容改成如下:根据自己实际情况改

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPADDR=192.168.1.63
NETMASK=255.255.255.0
GATEWAY=192.168.1.2
DNS1=192.168.1.2
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=eui64
NAME=ens33
DEVICE=ens33
ONBOOT=YES


备注:BOOTPROTO=static,表示静态配置 ip
ONBOOT=YES,表示启动机器会自动启动网卡
网络配置文件改完生效方式:
重载网卡 ,重启网卡之前一定要重新载入一下配置文件,不然不能立即生效

重载网卡
nmcli connection reload
开启网卡
nmcli c up ens33

2)安装如下软件
[root@localhost ~]# yum install lrzsz vim-enhanced -y
备注:lrzsz 是为了能直接把电脑文件拖拽到 linux 机器的
vim-enhanced 是为了直接能用 vim 命令的,但是如果你装的 linux 系统是 dvd 桌面版,默认是能
直接用 vim 的

3)配置主机名
[root@localhost ~]# hostnamectl set-hostname xuegod63
[root@localhost ~]# bash
2、关闭 selinux、停掉防火墙
[root@xuegod63 ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

注意:修改 selinux 配置文件之后,重启 linux 机器,selinux 才能永久生效
[root@xuegod63 ~]# getenforce #查看 selinux 是否关闭
Disabled
#显示 Disabled 说明 selinux 成功关闭


[root@xuegod63 ~]# systemctl stop firewalld && systemctl disable firewalld

3、配置时间同步
在 xuegod63 上执行如下:
开始安装 chrony 服务
[root@xuegod63 ~]# yum -y install chrony #如果没有该服务安装一下
[root@xuegod63 ~]# systemctl enable chronyd --now #设置 chronyd 开机启动并立即启
动 chronyd 服务同步网络时间

编辑 chronyd 配置文件,使用中国的时间服务器同步时间,速度更快
#文件最后增加如下内容  /etc/chrony.conf
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp1.tencent.com iburst
server ntp2.tencent.com iburst

echo "server ntp1.aliyun.com iburst
> server ntp2.aliyun.com iburst
> server ntp1.tencent.com iburst
> server ntp2.tencent.com iburst" >> /etc/chrony.conf

1.安装 docker 容器并配置镜像加速器_第1张图片

4、开启包转发功能和修改内核参数
[root@xuegod63 ~]# modprobe br_netfilter
[root@xuegod63 ~]# cat > /etc/sysctl.d/docker.conf < net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF

[root@xuegod63 ~]# sysctl -p /etc/sysctl.d/docker.conf

备注,内核参数相关说明:
1、net.bridge.bridge-nf-call-ip6tables = 1:
该参数启用了桥接网络设备(bridge)在 IPv6 包进行 iptables 规则过滤时,通过 netfilter 模块将数据包传递给 iptables 处理。这个参数通常用于虚拟化环境,如 Docker 等,以支持 IPv6 流量的转发
和安全过滤。如果不启用该参数,则在桥接设备上的 IPv6 流量无法进行 iptables 规则过滤。
2、net.bridge.bridge-nf-call-iptables = 1:
该参数启用了桥接网络设备(bridge)在 IPv4 包进行 iptables 规则过滤时,通过 netfilter 模块将
数据包传递给 iptables 处理。这个参数通常用于虚拟化环境,如 Docker 等,以支持 IPv4 流量的转发
和安全过滤。如果不启用该参数,则在桥接设备上的 IPv4 流量无法进行 iptables 规则过滤。
3、net.ipv4.ip_forward = 1:
该参数启用了 Linux 操作系统的 IP 转发功能,允许路由器将接收到的数据包转发到其他网络。这个
参数通常用于构建网络拓扑,如在一个局域网内部部署多台主机并让它们可以访问外部互联网。如果不启
用该参数,则 Linux 系统默认不会转发 IP 数据包。.

5、在线安装 docker
配置安装 docker-ce 需要的国内 yum 源(阿里云)
[root@xuegod63 ~]#yum -y install yum-utils
[root@xuegod63 ~]# yum-config-manager --add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
6、开始安装 docker
[root@xuegod63 ~]# yum install docker-ce wget net-tools nfs-utils gcc gcc-c++
make cmake libxml2-devel openssl-devel curl curl-devel unzip sudo libaio-devel wget
ncurses-devel autoconf automake zlib-devel epel-release openssh-server socat ipvsadm
conntrack -y --allowerasing


备注,yum install 安装软件包,加参数—allowerasing,可以替换掉冲突的软件包

#启动 docker 服务
[root@xuegod63 ~]# systemctl start docker && systemctl enable docker
#查看 Docker 版本信息
[root@xuegod63 ~]# docker version
#查看 docker 状态
[root@xuegod63 ~]# systemctl status docker
显示 running,说明 docker 正常起来了

你可能感兴趣的:(docker,容器,运维)