知识库
容器连数据库被拒:自定义网络的实际子网和你预设的不一样
你给应用容器和数据库容器建了一个自定义网络,让它们通过内网互通。数据库那边配置了放行规则,只允许应用所在网段访问。可应用一连就被拒,日志说连接被拒绝或超时。你把放行规则改来改去,就是不通。 现象 现象是"连接被拒"或"认证/网络失败",而且…
容器里 python -m 包名.入口 找不到模块:代码被铺在了根目录
你把一个 Python 项目打成镜像,本地 python m mypkg.main 跑得好好的,一进容器就报找不到模块。Dockerfile 里明明把代码 COPY 进去了,ls 也能看到文件,可 Python 就是"看不见"这个包。 现象…
改了 .env 后 docker compose restart 不生效:容器还在用旧环境变量
你修改了项目里的 .env 文件,把数据库连接串、某个开关或 API 地址更新成了新值,然后按肌肉记忆敲下 docker compose restart。容器转了一圈回来了,可程序里读到的还是那个旧值。你反复确认 .env 文件明明已经改了…
Compose 里把选项和它的值写成一行,参数名多出一个空格
你用 Docker Compose 起一个数据库容器,想在启动命令里加几个调优参数。参数是从一篇调优文章里抄的,看起来完全正确。可容器一起来就退出,日志里报的参数名,怎么看怎么眼熟——却又对不上。 现象 容器启动立即失败,日志里报类似: 细…
Docker 命令报"找不到守护进程":不是没装,是服务没启动
你在一台刚装好、或者从别人手里接过来的 Linux 机器上敲下 docker ps,想看看有哪些容器在跑。命令敲下去,等来的不是列表,而是一句让你怀疑人生的报错——你明明记得这个软件装过了。 现象 报错长这样: 有时还会顺带一句 permi…
PostgreSQL 用错密码也能连上:官方镜像对回环地址默认是 trust
你在测试环境验证数据库认证是否正常,故意输了个错密码——结果连上了。不是记错了密码,而是认证压根没生效。 现象 用错误的密码执行 PostgreSQL 连接,居然成功了: 进去执行 select 1 也正常返回。看起来密码认证形同虚设,安全…
docker run -p 把面板直接推到公网,默认还常常没有密码
你想在 NAS 或服务器上跑个下载面板、刮削面板、某个 Web 管理界面。网上一搜就有现成的 docker run 命令,复制粘贴,服务起来了,用着也顺。直到有一天发现,别人也在用。 现象 用 docker run p 2345:2345 …
Docker 容器与虚拟机的本质差异
引言 在部署应用时,Docker 容器和虚拟机(VM)是两种常见的选择。它们都能提供隔离的运行环境,但底层实现和适用场景截然不同。理解这些差异,有助于你根据需求做出合适的技术选型。 架构差异:共享内核 vs 独立内核 虚拟机 依赖 Hype…