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

简介: 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

4、开启包转发功能和修改内核参数

[root@xuegod63 ~]# modprobe br_netfilter

[root@xuegod63 ~]# cat > /etc/sysctl.d/docker.conf <<EOF
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 正常起来了

目录
相关文章
|
1天前
|
存储 数据管理 Linux
Linux - 记录问题:docker 迁移 更改镜像默认位置的注意事项
Linux - 记录问题:docker 迁移 更改镜像默认位置的注意事项
10 0
|
1天前
|
应用服务中间件 nginx 开发者
从 Docker Hub 拉取镜像受阻?这些解决方案帮你轻松应对
最近一段时间 Docker 镜像一直是 Pull 不下来的状态,感觉除了挂🪜,想直连 Docker Hub 是几乎不可能的。更糟糕的是,很多原本可靠的国内镜像站,例如一些大厂和高校运营的,也陆续关停了,这对我们这些个人开发者和中小企业来说是挺难受的。之前,通过这些镜像站,我们可以快速、方便地获取所需的 Docker 镜像,现在这条路也不行了。感觉这次动作不小,以后想直接访问 Docker Hub 是不可能了。所以我们得想办法搭建自己的私有镜像仓库。
从 Docker Hub 拉取镜像受阻?这些解决方案帮你轻松应对
|
1天前
|
网络协议 Linux Docker
宿主机的容器是如何通过docker0通信的?
宿主机的容器是如何通过docker0通信的?
|
2天前
|
Java Docker 容器
使用 Spring Boot 构建 Docker 镜像并进行多模式部署
使用 Spring Boot 构建 Docker 镜像并进行多模式部署
12 2
|
3天前
|
Cloud Native 安全 Docker
云上攻防-云原生篇&Docker安全&系统内核&版本&CDK自动利用&容器逃逸
云上攻防-云原生篇&Docker安全&系统内核&版本&CDK自动利用&容器逃逸
|
3天前
|
前端开发 安全 数据库
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
|
3天前
|
Linux Docker 容器
蓝易云 - net.ipv4.ip_forward=0导致docker容器无法与外部通信
完成以上步骤后,Docker容器应该能够正常与外部通信了。
9 2
|
3天前
|
Docker 容器
蓝易云 - Docker中容器的随机命名方式
例如,一个自动生成的容器名称可能是"happy_einstein"。这种随机命名方式既保证了容器名称的唯一性,又增加了一些趣味性。
9 2
|
4天前
|
数据安全/隐私保护 开发者 Docker
国内docker公开镜像站的关闭!别急,docker_image_pusher 使用Github Action将国外的Docker镜像转存到阿里云私有仓库
通过使用 docker_image_pusher 这样的开源项目,我们能够轻松地解决国内访问 Docker 镜像拉取速度慢及拉去失败的问题,同时保证了镜像的稳定性和安全性。利用 Github Action 的自动化功能,使得这一过程更加简单和高效。
222 2
|
4天前
|
缓存 Linux 开发工具
win10下docker desktop:使用dockerfile基于CentOS:8创建可以使用vim的镜像
win10下docker desktop:使用dockerfile基于CentOS:8创建可以使用vim的镜像
21 0

热门文章

最新文章