Docker 听起来很酷,Kubernetes 更酷。 但如果你只是做单体 Web + 数据库:一台服务器 + 一个定时任务就够了,不需要集群。别再跟着 YouTube 把 Todo App 部署上 EKS。别假装你的 Side Project 需要 Helm Chart。如果你不会手写 Nginx,你大概也用不着容器化。
你真的需要 Docker 吗?
等镜像第 17 次把“半个互联网”拉到本地,CI 流水线等 15 分钟,你就会开始怀疑人生。
以前每个提交、每个分支、每个小修复,都会经历:构建慢、报错玄学、镜像臃肿、本地环境神秘失灵。
为了啥?跑个 Node.js + Redis + PostgreSQL 的普通 Web 应用。
这又不是造火箭。
“最佳实践”说 Docker 能带来隔离、环境一致性、可扩展。我得到的却是:复杂度、YAML 疲劳、破碎的本地环境。
直到有一天,把 Docker 从工作流里连根拔掉。
世界没有崩塌。反而更顺了。
用什么替代了 Docker
大实话:大多数开发不需要 Docker。你真正需要的是可复现和好文档。
问自己:我到底用 Docker 干了什么? 然后,一张镜像一张镜像地替换掉。
1) 本地开发环境 → asdf + direnv + Shell 脚本
我的项目是 monorepo:
- React 前端
- Node.js API
- PostgreSQL
- Redis
替代方案:
- asdf 管理每个项目的 Node/Postgres 版本
- direnv 自动加载环境变量
- 一个 **
dev.sh**:brew装 Postgres、brew services启 Redis、npm start拉起应用
结果:无容器开销、无上下文切换、飞快。
2) CI/CD 构建 → 原生 Runner + 朴素脚本
以前我的 GitHub Actions 被 Docker 镜像拖到 12 分钟。 现在:
- 用 GitHub 托管 Runner(Linux,自带 Node)
- Shell 脚本完成
npm ci、lint、test - 不用 DinD、不推镜像、不玩缓存黑魔法
CI 固定 3 分钟。每一次都一样。
3) 部署 → Railway / Fly.io / Deno Deploy(无 Dockerfile)
曾给 Heroku/K8s 写 Dockerfile。现在:
- Fly.io:从源码构建,无需 Dockerfile
- Deno Deploy:边缘部署,根本没有 Docker 这回事
- 数据库用 Supabase/Neon:托管、零配置、很快
一句话:It Just Works。
“那开发/生产环境不一致怎么办?”
常听到这句:“Docker 保证环境一致性”。除非你在 Dockerfile 里死磕版本固定、每次都重建(你大概率不会),容器也会漂移:
- 基础镜像悄悄更新
- Alpine 包变了
- 某一层缓存抽风
切到源码构建 + 轻工具后,环境不一致的 Bug 反而更少。 因为:零碎部件更少、版本边界更清晰、本地环境更透明。
真正的问题不是 Docker,而是你不信任你的环境
Docker 成了一个拐杖,用来遮盖:
- 糟糕的文档
- 雪花般的环境
- 混乱的本地配置
- 折磨人的入职流程
把 Docker 炸掉后,被迫把这些做好:
- 写清楚如何安装/运行
- 版本管理干净
- 脚本可读、可维护
团队的入职更快、调试更轻松、部署更有底气。
自从不用 Docker 之后,我拿到的实打实收益
- 构建时间:12 分钟 → 3 分钟
- 新人入职:2 小时 → 15 分钟(运行脚本直接开工)
- 磁盘占用:20GB+ Docker 卷 → < 500MB
- 认知负担:我终于看懂自己栈里发生了什么,不再调“那个容器连不上这个容器”的谜题
你的 CRUD 应用,不需要 K8s
Docker 听起来很酷,Kubernetes 更酷。 但如果你只是做单体 Web + 数据库:一台服务器 + 一个定时任务就够了,不需要集群。
别再跟着 YouTube 把 Todo App 部署上 EKS。别假装你的 Side Project 需要 Helm Chart。如果你不会手写 Nginx,你大概也用不着容器化。
很多人把工具复杂度当成工程成熟度。复杂 ≠ 高级。简单解决真实问题才是本事。 Docker 不会让你的架构更“干净”,它常常只是让它更重。
什么时候 Docker 仍然有意义
这里不是说 Docker 是原罪。它在这些场景很棒:
- 操作系统级隔离(安全)
- 多语言混合(Go 后端 + Python ML)
- 基础设施团队需要生产副本/一致分发
- 史前依赖地狱
- Playwright 之类需要 headless 浏览器的工具
但如果你在做 Node / Rails / Django / Laravel 的普通 Web:从简单开始。
常见问题(FAQ)
Q:开发一定要用 Docker 吗?A:不。用 asdf / nvm / pyenv + Shell 脚本,可以覆盖 Docker 90% 的“环境可复现”价值,而且没有容器开销。
Q:团队协作是不是 Docker 更好?A:只有当你的文档很差时才是。把版本、工具、脚本写清楚,不上容器也能更快上手。
Q:能不用 Docker 部署吗?A:当然。Fly.io / Railway / Vercel / Deno Deploy 都支持源码部署。
Q:Docker 的替代是什么?A:
- 版本管理:asdf / nvm / pyenv
- 环境变量:direnv
- 可复现:Shell 脚本
- 服务依赖:系统包管理(
brew/apt) - 部署:源码构建平台
这几样工具,确实让我轻松了
- asdf:通用版本管理
- direnv:按目录自动加载
.env - Fly.io:无 Dockerfile 的源码部署
- Railway.app:后端一键部署
- Supabase:托管 Postgres + Auth
- Neon:无服务器 Postgres,弹性强
结尾的重话
你不需要容器。 你需要清晰、克制,以及一个你真正理解的技术栈。
更重要的是: 别再为 DevOps 推特的炫技优化, 开始为速度、心智负担、交付优化。
AI大模型学习福利
作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
一、全套AGI大模型学习路线
AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取
二、640套AI大模型报告合集
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获
三、AI大模型经典PDF籍
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获
四、AI大模型商业化落地方案

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获
作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量

1018

被折叠的 条评论
为什么被折叠?



