课程 294 / 365
81%
部署与可靠性·理解·10 分钟
正文已完成

代码能运行,还需要一整套运行环境

区分源码、运行时、依赖、操作系统与外部服务,建立部署环境的基本边界。

L294

“本地能跑”只证明一组隐含条件恰好满足。运行时版本、系统库、依赖包、网络、数据库和启动参数都属于应用实际行为的一部分;部署的第一步是把这些条件从个人电脑中显式提取出来。

这一课的结果

能列出一个应用从源码到可服务所依赖的关键环境层。

核心概念

先把关键判断说清楚

01

源码只是其中一层

相同代码在不同 Node、Python、系统库或 CPU 架构上可能得到不同结果。

02

外部依赖也属于环境

数据库、对象存储、模型 API 和 DNS 虽不在进程内,却直接决定服务能否完成请求。

03

启动入口固定行为

明确工作目录、启动命令、端口和健康检查,才能让自动化平台以相同方式启动应用。

案例拆解

一台机器能跑的站点迁移失败

开发者复制源码到云服务器后直接启动,应用因 Node 版本不同、缺少构建产物和数据库地址而失败。

  1. 01

    记录本地实际使用的 Node 版本、包锁文件和构建命令。

  2. 02

    列出数据库、端口和静态文件目录等外部条件。

  3. 03

    在全新目录按同一入口安装、构建、启动并执行健康检查。

案例结果

隐含条件被转成可复现清单,新机器不再依赖开发者的个人记忆。

提交前练习

现在轮到你

为一个现有应用写出最小运行环境清单。

内容会自动保存在当前设备
查看参考答案与评分标准

参考答案

Node 22.13、Linux x64;按 package-lock 安装并执行 npm run build;依赖 PostgreSQL 和对象存储;以 npm start 启动 3000 端口,/health 同时检查进程与数据库连接。

评分标准

  • 版本能够精确复现
  • 外部服务没有遗漏
  • 健康检查验证真实依赖而非只看进程

本课收口 · 学习证据

完成,不等于随手打一个勾。

确认阅读、保存练习,再用 30 秒检查和一句话总结留下真实学习证据。

0 / 3
02完成本课练习0 / 4 项必填内容已填写
03通过理解检查约 30 秒
下面哪项最能证明一个服务完成了可用部署?
你现在更接近哪一种状态?
完成上面三项后,才能把本课记为已验证。

资料来源

继续核对与延伸阅读

本课内容最近更新于