Loading

Runtime-Container-01-Docker

安装docker

二选一

一行脚本安装或多行手动安装

# 一行脚本使用阿里云镜像安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

阿里云加速安装docker

# 安装yum config manager
yum install -y yum-utils
# yum增加docker repo为阿里云的镜像
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 查看docker-ce版本
yum list docker-ce --showduplicates | sort -r
# 安装docker-ce 如果提示您接受 GPG 密钥,请选是 Y
yum install docker-ce-20.10.6 docker-ce-cli-20.10.6
# 启动 docker
systemctl start docker

配置docker

# 首先重启以便自动生成/etc/docker/daemon.json配置文件
systemctl restart docker
# 配置docker使用阿里云镜像
tee /etc/docker/daemon.json <<'EOF'
{
    "oom-score-adjust": -1000,
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "128m",
        "max-file": "4"
    },
    "dns": [
      "8.8.8.8",
      "8.8.4.4",
      "223.5.5.5",
      "223.6.6.6"
    ],
    "builder": {
        "gc": {
            "defaultKeepStorage": "20GB",
            "enabled": true
        }
    },
    "max-concurrent-downloads": 10,
    "max-concurrent-uploads": 10,
    "insecure-registries":["0.0.0.0/0"],
    "registry-mirrors": ["https://xxx.mirror.aliyuncs.com"],
    "storage-driver": "overlay2",
    "storage-opts": ["overlay2.override_kernel_check=true"],
    "exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
# 重新加载服务的配置文件,这步好像可以省掉
#systemctl daemon-reload
# 重启docker服务
systemctl restart docker
# 确认配置已经生效
docker info

# 配置开机启动
systemctl enable docker
# 确认已配置开机启动
systemctl is-enabled docker

设置docker容器访问外网

DOCKER容器里面PING不通外网,ping不通其他服务器的IP

docker 运行的时候会默认将 ip_forward 置为开启状态,但是一旦有网络重启操作竟会导致其关闭,导致 ping 不通外网

部署完服务后,容器连接redis异常,连接数据库异常等,只有当服务 跟 redis主、数据库主在同一台服务器上时,这台服务器的api服务才能正常连接

# 查看 转发开启或关闭 网络 ,0-关闭,1-开启
cat /proc/sys/net/ipv4/ip_forward

#设置为开启,只是设置这个值,当重启网络服务后,该值会变成0
echo 1 > /proc/sys/net/ipv4/ip_forward

# 修改配置文件,将这个值持久化为1,这样再有重启网络的时候,docker网络也正常
echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
posted @ 2022-12-11 15:48  知科行技  阅读(20)  评论(0编辑  收藏  举报