安装Docker后服务器无法Ping通通常有以下几种原因:
# 查看Docker网络配置
docker network ls
ip addr show docker0
# 查看iptables规则
sudo iptables -L -n -v
sudo iptables -t nat -L -n -v
# 停止Docker服务
sudo systemctl stop docker
# 清除iptables规则
sudo iptables -F
sudo iptables -t nat -F
sudo iptables -t mangle -F
sudo iptables -X
# 重启网络服务(根据系统不同)
sudo systemctl restart network # CentOS/RHEL
sudo systemctl restart networking # Ubuntu/Debian
# 重新启动Docker
sudo systemctl start docker
# 编辑Docker配置文件
sudo vi /etc/docker/daemon.json
# 添加以下内容(如果文件不存在则新建)
{
"iptables": false,
"bridge": "none"
}
# 重启Docker服务
sudo systemctl restart docker
# 查看网络接口
ip link show
# 如果docker0接口影响网络,可以删除
sudo ip link delete docker0
# 1. 创建自定义Docker网络
docker network create --subnet=192.168.100.0/24 mynetwork
# 2. 修改Docker默认配置
sudo vi /etc/docker/daemon.json
{
"bip": "192.168.100.1/24",
"fixed-cidr": "192.168.100.0/24",
"default-address-pools": [
{"base": "192.168.101.0/24", "size": 24}
]
}
# 3. 重启Docker
sudo systemctl restart docker
# 检查网络连通性
ping 8.8.8.8
ping your-server-ip
# 检查Docker容器网络
docker run --rm busybox ping 8.8.8.8
如果问题仍然存在,可能需要检查系统防火墙(firewalld/ufw)或联系网络管理员检查更高级别的网络配置。