03、docker安装(在线)

1、安装基础环境

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 关闭防火墙
systemctl stop firewalld && systemctl disable firewalld

# 关闭 iptables 防火墙
yum install iptables-services -y #安装 iptables
service iptables stop && systemctl disable iptables
# 清空防火墙规则
iptables -F

#关闭 selinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
# 注意:修改 selinux 配置文件之后,重启机器,selinux 才能永久生效

getenforce
# 显示 Disabled 表示 selinux 关闭成功

#配置时间同步
yum install -y ntp ntpdate
ntpdate cn.pool.ntp.org
#编写计划任务
crontab -e
* */1 * * * /usr/sbin/ntpdate cn.pool.ntp.org

# 重启 crond 服务使配置生效:
systemctl restart crond

# 安装基础软件包
yum install -y wget net-tools nfs-utils lrzsz gcc \
gcc-c++ make cmake libxml2-devel openssl-devel curl \
curl-devel unzip sudo ntp libaio-devel wget vim \
ncurses-devel autoconf automake zlib-devel \
python-devel epel-release openssh-server socat \
ipvsadm conntrack

2、安装Docker-ce

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 安装 docker 依赖包 
yum install -y yum-utils device-mapper-persistent-data lvm2

# 配置 docker-ce 国内 yum 源(阿里云)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 查看docker版本
yum list docker-ce --showduplicates | sort -r

# 安装指定版本
yum install -y docker-ce-18.09.9 docker-ce-cli-18.09.9 containerd.io
或者
# 安装 docker-ce 最新版
yum install docker-ce -y


# 启动 docker 服务
systemctl start docker && systemctl enable docker
systemctl status docker

# 查看 Docker 版本信息
docker version

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

内核参数修改:br_netfilter 模块用于将桥接流量转发至 iptables 链,br_netfilter 内核参数需要开启转发。

注:不开启ipv4转发的话,在容器中暴露端口,访问不到地址。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

modprobe br_netfilter
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

# 使参数生效
sysctl -p /etc/sysctl.d/docker.conf

# 重启后模块失效,下面是开机自动加载模块的脚本
# 在/etc/新建 rc.sysinit 文件

cat /etc/rc.sysinit
#!/bin/bash
for file in /etc/sysconfig/modules/*.modules ; do
[ -x $file ] && $file
done

# 在/etc/sysconfig/modules/目录下新建文件如下
cat /etc/sysconfig/modules/br_netfilter.modules
modprobe br_netfilter # 输出

# 增加权限
chmod 755 /etc/sysconfig/modules/br_netfilter.modules

# 重启机器模块也会自动加载
lsmod |grep br_netfilter
# 输出
br_netfilter 22209 0
bridge 136173 1 br_netfilter

# 重启docker
systemctl restart docker

4、开启加速器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker.credclouds.com",
"https://k8s.credclouds.com",
"https://quay.credclouds.com",
"https://gcr.credclouds.com",
"https://k8s-gcr.credclouds.com",
"https://ghcr.credclouds.com",
"https://do.nark.eu.org",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.1panel.live",
"https://docker.rainbond.cc"
],
}
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker

5、实战nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 创建容器
docker run --name centos -p 80 -itd centos
docker ps | grep centos

# 进入容器
docker exec -it centos /bin/bash

# 由于centos不在维护,需要修改yum源
rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-
8.5.2111.repo

# 安装插件
yum install wget -y
yum install nginx -y


03、docker安装(在线)
http://blog.kjiang.vip/posts/1950070033.html
作者
发布于
2025年7月17日
许可协议