为什么防火墙重启docker容器连接不上网络?

article/2025/6/18 23:08:17

记录一次docker网络连接的问题:
docker 容器化技术
linux 主机防火墙重启了之后为啥docker 就不能正常连接网络了,需要重启docker服务;
系统版本:redhat 7.5 docker版本:19.03.13

说起这个问题,就不得不说docker的网络模式了:
1. host docker不会为容器创建独有的network namespace,特点容器与宿主机IP一致,网络性能高;
2. bridge 桥接模式,与vmware的nat模式有几分相似,特点 docker 会创建docker0网桥,写入iptables规则,docker会为容器创建独有的network namespace,也会为这个命名空间配置好虚拟网卡,路由,DNS,IP地址与iptables规则;
3. none 模式 网络环境为 none,即不为 Docker Container 任何的网络环境,一般做定制开发时才需要用到;
4. 容器共享模式,这种模式是host模式的一种延伸,一组容器共享一个network namespace;
对外表现为他们有共同的IP地址,共享一个网络栈;
kubernetes的pod就是使用的这一模式。

今天说的防火墙重启后,容器不能联网的问题就发生在bridge模式下,原因是在bridge模式下,docker会默认写入iptables规则,但是这些规则不知为何,没有写入磁盘所以当防火墙重启后,规则丢失,容器自然无法上网。
解决办法就是重启docker,重写规则,所以一般生产要不就是关闭防火墙起docker,要不就开启防火墙起docker,过程中不要让防火墙重启;
在这里插入图片描述


http://chatgpt.dhexx.cn/article/kZhTOqR2.shtml

相关文章

Ubuntu18重启docker服务失败问题备忘

环境信息 操作系统:Ubuntu 18.04.2Docker:18.06.1-ce 现象 执行命令service restart docker,提示启动失败: roothedy:~# systemctl restart docker Failed to restart docker.service: Unit docker.service not found.原因 依…

重启docker容器命令

先查看docker容器 docker ps -a 然后用docker attach 命令进入启动的docker

Docker修改daemon.json配置,不需要重启docker或daemon-reload

dockerd reload 配置(不会重启 dockerd,直接修改配置) kill -SIGHUP $(pidof dockerd) # 给 dockerd 发送 SIGHUP 信号,dockerd 收到信号后会 reload 配置查看是否配置成功 docker info | grep -i 配置过滤关键字

不重启docker进程,重新reload加载配置

因为运行了多个容器,重启docker进程时会让所有容器重启,时间不能等;有没有类似nginx一样的reload机制呢? linux 信号认知:SIGHUP 本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知…

linux定时任务 定时重启docker容器

Linux添加crontab定时任务 由于公司古董项目,不知原因引发了,容器得每次重启才能正常使用。由于工作进度的原因没办法对老项目进行构架重构。就采取了这个定时任务的方式解决办法。 首先根据网页提供资料,crontab分为两类,系统c…

服务器关机后,重启docker容器

可以先查看被关闭的容器 使用命令 docker container ls -a 然后找到容器,输入 docker container start xxxx(容器名称) 就可以启动容器了 此外,设置开机自启 docker update --restartalways xxxx(容器名称)

docker启动,重启,关闭命令

启动 systemctl start docker 守护进程重启 sudo systemctl daemon-reload 重启docker服务 systemctl restart docker 重启docker服务 sudo service docker restart 关闭docker service docker stop 关闭docker systemctl stop dockerDocker容器的创建、启动、和停…

Git快速入门-常用命令之交响乐篇

Git快速入门系列文章 - Git快速入门-安装配置篇 - Git快速入门-常用命令之独奏篇 - Git快速入门-常用命令之交响乐篇 - Git快速入门-git stash 暂存变更,git reset 撤销commit,git revert 回退远程版本库 1.概述 Git入门系列第三篇,介绍…

开发linux常用指令操作

1. 开发linux常用指令操作 1.文档操作常用指令 命令功能描述ls列出目录cd切换目录pwd显示目前的目录mkdir创建一个新的目录rmdir删除一个空的目录cp复制文件或目录rm移除文件或目录mv移动文件与目录或修改文件与目录的名称 自动补全 在敲出 文件/ 目录 / 命令 的前几个字母…

Git使用教程总和

Git使用教程 【一】下载安装(Windows) 【1】获取Git安装程序 Git官网地址:https://git-scm.com/downloads 因为我们是用Windows系统上的浏览器访问的,Git官网自动之别到了我使用的操作系统,所以右侧直接显示下载使用Windows系统的最新版本(如…

一本面向入门者的Git书

一本面向开发者的Git书《Git学习指南》 如果你在某一团队中从事开发工作,希望了解如何才能有效地使用Git,那么这本书就是一个正确的选择。本书既不是那种偏重于理论的大部头,也不是一本面面俱到的参考书。我们并不打算解释所有的Git命令&…

Git基础操作

文章参考了廖雪峰的Git教程,自己进行了具体的操作学习,实例演示,加以记录学习。 目录 Git简介 Git与GitHub 安装Git 创建版本库 把文件添加到版本库 基本文件操作 修改 版本回退 工作区和暂存区 管理修改 撤销修改 删除文件 远程…

项目开发-工具-版本控制Git完整系统化使用说明

Git使用说明 前言1. 起步1.1 关于版本控制1.2 Git 简史1.3 Git 是什么?1.4 命令行1.5 安装 Git1.6 初次运行 Git 前的配置1.7 获取帮助1.8 总结 2. Git 基础2.1 获取 Git 仓库2.2 记录每次更新到仓库2.3 查看提交历史2.4 撤消操作2.5 远程仓库的使用2.6 打标签2.7 G…

三十分钟轻松玩转Git——学会Git就靠这一篇(ง •_•)ง

文章目录 Git入门教程Git简介🙋‍♀️Git是什么?🙋‍♀️GitHub与码云?🙋‍♀️TortoiseGit是什么?🙋‍♀️图形化客户端? 安装Git初始化Git📍1.配置用户信息&#x1f4c…

【推荐】git commit 规范和如何在 commit 里使用 emoji

前言 大家好,我是桃翁,今天给大家带来的是关于 git commit 那些事儿,希望大家喜欢。 对于规范 git commit message 我是分成了两种类型去看待。 对于通用库、开源项目这类多人维护,而且极大可能别人会来看这份代码的&#xff0c…

从git记录中删除大文件

大家一定遇到过在使用Git时,不小心将一个很大的文件添加到库中,即使删除,记录中还是保存了这个文件。以后不管是拷贝,还是push/pull都比较麻烦。今天将工程上传到github时,发现最大只能上传100MB大小文件,在…

git基本操作(入门级)

写在前面:初次接触git,便想到之前工作,下载跨平台通信库ACL的源代码时的gitHub,于是便借助互联网弄清楚了它们的区别(不过仅供参考)。 关于Git和github区别的参考地址:http://blog.csdn.net/qq_…

一篇文章,让你彻底学会Git

文章目录 1. 版本控制1.1 常见的版本控制工具1.2 版本控制分类1.3 Git与SVN的主要区别 2. Git介绍1.1 Git 功能特点1.2 Git 和 GitHub 的区别 2. Git 环境配置2.1 软件下载2.2 启动Git2.3 Git配置2.3.1 设置用户名与邮箱 3.Git基本理论3.1 三个区域3.2 工作流程 4. Git 项目搭建…

Git-如何写好一条提交信息

Git-如何写好一条提交信息 本文为翻译文章 原文: How to Write a Git Commit Message 作者: cbeams 1.为什么好的提交信息很重要 如果你曾经打开过任意一个Git仓库的提交历史,你可能会发现它们的提交信息多多少少会有些混乱。 请比较下面两个…

GIT的相关内容

概述 git是一个版本管理工具,它是用于管理对应的代码的版本的。它是一个集中式的代码管理工具(支持分布式)。相同的软件还有svn(集中式版本管理工具,它不具备分布式的功能) svn及git的区别 了解git及svn的区别 Git是分布式的,SVN是集中式的Git复杂概念多,SVN简单易上…