docker与ufw是不兼容的,一个方案是用三方的docker_ufw
今天换一个方案,可以简单配置以兼容firewalld
1 安装firewalld
sudo apt-get install firewalld
2 配置firewalld
sudo firewall-cmd --add-port={22/tcp,443/tcp} --permanent
sudo firewall-cmd --remove-port=3306/tcp --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
sudo firewall-cmd --state
running
3 安装Docker
参考最新教程,不重复了
https://docs.docker.com/engine/install/debian/
4 配置让Docker不修改iptables规则
sudo vim /etc/docker/daemon.json
{
"iptables": false
}
重启Docker
sudo systemctl restart docker
5 后续,docker端口直接映射到host上,默认对内网是可见,外网不可见,需要的可以通过1中的firewalld控制