Skip to content

第28课 · 数据驾驶舱:部署上线

封面:给 AI 一把钥匙,它帮你把驾驶舱搬上云端

本节要点

  • 驾驶舱要"上线",得搬到一个 24 小时不关机的服务器上,不然只有你自己电脑能看
  • 听起来要懂一堆 IT 黑话(服务器、IP、域名、HTTPS、SSH……),这节课全部用人话讲明白
  • 核心心法:配一把"钥匙"交给 AI,剩下全由它干——你只手动做一次 SSH 免密,连服务器、装环境、传代码、配域名证书,AI 全包
  • 两种部署方式:Docker("集装箱",干净搬家方便,推荐)和裸机(公司不让用 Docker 时的备选)
  • 上线前的安全清单:先存档能回退、数据库别暴露、设强密码、不用 root
  • 顺带讲清:OpenCode 的 /init 命令是什么,跟 Claude Code、Codex 比有什么不同

1. 驾驶舱做完了,为什么只有你自己能看?

上一节我们把数据驾驶舱磨到了能用的程度,但只要你关掉电脑,别人就看不到了。

原因很简单:它跑在一个叫 localhost 的本地地址上。

先解释几个审计、财务同学最常懵的词,后面整节课都建立在这上面。

1.1 localhost:你"自己家"的门牌

你在浏览器里打开驾驶舱,地址栏通常是这俩之一:

http://localhost:8000
http://127.0.0.1:8000

localhost127.0.0.1 是一个意思,翻译成人话就是**"我自己这台电脑"**。它是一块只在自己电脑里生效的"私人门牌"——你家的 WiFi,别人连上来也敲不开这扇门。

打个比方:localhost 就像你办公桌上那张只给自己看的草稿纸,同事根本看不到。

1.2 IP 地址:电脑的门牌号

每台连上网的电脑,都有一个 IP 地址,就是一串数字,比如 192.168.31.221。你可以把它理解成电脑在网上的门牌号

127.0.0.1 是一个特殊的门牌号,永远指向"我自己"。

1.3 局域网 vs 外网

  • 局域网:同一个 WiFi / 同一个办公室里的所有电脑,互相能串门。你在公司里让同事打开你的 IP,他们能看到驾驶舱——但前提是大家都连着同一个网
  • 外网(公网):整个互联网。想让外网的人(出差在外的领导、家里加班的同事)也能访问,光靠你自己这台关机就断的电脑是不行的。

这就是为什么要"部署上线"

你自己电脑会关机、会断网、IP 会变。想让大家随时能看驾驶舱,得把它搬到一个永远开机、永远在线、有固定地址的地方——那就是服务器


2. 先把几个词一次性讲明白(小白扫盲)

这节课你会遇到一堆 IT 名词,别怕,先用人话过一遍,后面看到就不会慌。

名词人话解释打个比方
服务器一台 24 小时不关机、专门给别人提供服务的电脑网上的"机房里那台永不休息的电脑"
IP 地址电脑在网络上的门牌号123.45.67.89
localhost / 127.0.0.1永远指向"我自己这台电脑"的特殊门牌自己办公桌上的草稿纸
端口(port)同一台电脑上不同服务的"窗口号",冒号后面的数字银行的 1 号窗口、2 号窗口
域名给 IP 起的好记的名字auditdog.cn123.45.67.89 好记
HTTP网页传输的"明文"协议,别人中途能偷看明信片,内容裸奔
HTTPS加密版的 HTTP,浏览器显示小锁🔒密封信封,中途偷看是乱码
SSH远程登录服务器用的"协议"(一套约定)远程操控服务器的"遥控器"

不用背

这些词你有个印象就行。真正动手时,把现象告诉 AI,它会用人话给你解释、帮你操作。这节课的精髓就是:你不用成为运维专家,AI 来当运维


3. 第一步:准备一台服务器

想让驾驶舱"上线",得先有一台服务器。听起来很高大上,其实就是在云厂商那里租一台"云上的电脑"

3.1 三种选择,挑一个

类型适合谁注意
境外云服务器想公网访问、绑域名 HTTPS、不想备案买完让 AI 帮你做安全初始化
国内云服务器(阿里云/腾讯云轻量)国内访问快、长期稳定绑域名要 ICP 备案,约 20 天,不备案域名打不开
公司内网一台机器只给公司内部看、数据不外泄无需公网/域名,仅内网访问

新手最省事:境外云服务器

不想等备案、想马上能用,选境外的。买完即用,绑域名不用备案,配 HTTPS 也最顺。

3.2 视频里我用的方案(供参考)

我自己买了一台香港的服务器,服务商叫「天霆网络」,价格很划算:

  • 特惠一型:99 元/年,也有 999 元"永久付"(一直用,我用了两年没问题)
  • 四型(配置高,16G 内存、10 核左右):3999 元永久,相当于买台笔记本的钱,但能一直用,约 10 年回本

它给你一个独立的公网 IP,再绑个域名就能公网访问了。

境外服务器的小毛病

  • 网络质量一般,用 SSH 远程连接时偶尔会断,断了重连就行
  • 国内少数省份(比如福建、内蒙古)可能访问不了境外服务器,其他地区正常
  • 我之前的「陈版主答疑」网站就部署在这台香港服务器上

国内云服务器(腾讯云、阿里云、京东云)也行,常有几十块一年的便宜方案,但要留意:首年便宜,续费往往贵。长期用国内服务器,记得算总账。

没服务器怎么办

去云厂商买一台轻量应用服务器(几十块/月),选系统时勾 Ubuntu(最主流的服务器系统,AI 最熟)。买完把公网 IP(一串数字,如 123.45.67.89,在云厂商后台"实例详情"里能看到)、用户名(一般是 root)、密码准备好,等下要用。


4. 第二步:配一把"钥匙"——SSH 免密(整节课唯一需要你动手的地方)

这是整节课唯一一次需要你亲自动手的操作,配完之后,剩下的活全交给 AI。

4.1 为什么必须"免密"

还记得前面说的 SSH 吗?它是远程操控服务器的"遥控器"。正常情况下,你连服务器要输密码

问题来了:AI 是自动跑的,它跑到"请输入密码"这一步,没人帮它输,它就卡在那儿不动了

所以我们要配一个"免密钥匙"——配好之后,AI 一条命令就能直接进服务器,全程不用停。

一句话心法

SSH 免密 = 给 AI 配一把服务器的钥匙。 配之前每次进门要你输密码(AI 卡住);配好后 AI 自己开门干活。

4.2 钥匙原理(30 秒看懂)

SSH 免密用的是"一对钥匙":

  • 公钥(public key):相当于一把,装到服务器门上
  • 私钥(private key):相当于钥匙本体,留在你自己电脑里

配好之后,服务器认这把钥匙,AI 拿着它去开门,自动识别、不用口令。

4.3 第①步:在你自己电脑上生成钥匙

打开你自己电脑的终端(Mac 打开"终端"App;Windows 打开第21课装的 Warp 终端),敲这一行:

bash
ssh-keygen -t ed25519 -C "你的邮箱"

邮箱只是个标签,方便以后认出是谁的钥匙,填错也没事。

敲完一路按 3 次回车(不设密码、用默认路径,别管它问什么,回车就对了)。

这一步会在你电脑里生成两个文件:

文件是什么去哪
id_ed25519私钥(钥匙本体)留在本地,绝不外传
id_ed25519.pub公钥(锁)这个要送给服务器

4.4 第②步:把公钥(锁)送到服务器

还是在本地电脑的终端(只要没敲过 ssh 进服务器,就一定还在本地),敲:

bash
ssh-copy-id root@123.45.67.89
  • root 是服务器默认管理员账号,云服务器买来就是这个用户名
  • 123.45.67.89 换成你服务器的公网 IP

接下来屏幕会依次问你:

  1. 显示 Are you sure you want to continue connecting? → 输 yes 回车
  2. 显示 password: → 输入你服务器的 root 密码
  3. 看到 Number of key(s) added: 1成功了 🎉

输密码时屏幕一个字都不显示!

没有星号、没有圆点,这是 Linux 的正常设定,不是键盘坏了!放心输,输完直接回车。无数新手卡在这里,以为没输进去反复输。

Windows 没有 ssh-copy-id 命令?

两个办法:① 用 Warp 终端或装 Git Bash,里面都有这条命令;② 干脆把这整件事告诉 AI——"帮我配 SSH 免密到 root@我的IP,密码是 xxx",它带你一步步做。整个过程你都不用记,直接问 AI 也行(视频里我就是这么演示的)。

4.5 第③步:验证 + 起个短名(可选)

再敲一次:

bash
ssh root@123.45.67.89

这次不再问密码,直接就进服务器了,说明钥匙配好了 ✅

嫌每次敲一长串 IP 麻烦?告诉 AI:"帮我给服务器配个别名 myserver",它会帮你改好配置文件。配好后,AI 看到 myserver 就知道是哪台服务器。嫌麻烦完全可以跳过,直接用 IP 也能跑完整节课。

4.6 没出现"key(s) added: 1"?三个最常见原因

  1. 密码输错了(最常见)→ 重新敲一次,这次慢点输
  2. 服务器 22 端口没开 → 去云厂商后台找"安全组/防火墙",放行 22 端口
  3. 还是不行 → 直接把报错截图发给 AI,让它帮你查

卡住了别硬扛

SSH 这步是整节课最容易卡的地方,卡住了别死磕,截图发 AI 最快


5. 第三步:把部署整段丢给 AI

钥匙配好,重头戏来了——剩下的全交给 AI

回到 OpenCode,把这段话丢给 AI:

我的数据驾驶舱项目在当前目录。
我已经配好 SSH 免密,服务器别名 myserver,系统是 Ubuntu。
请帮我部署:
1. 检查并装好所需环境
2. 把代码传到服务器
3. 把后端、数据库、前端都跑起来
4. 配好开机自启
5. 给我一个浏览器能打开的网址

发出去之后,你就去忙别的。AI 会自动做这些事:

  1. SSH 连上服务器,探查环境
  2. 在服务器上装好需要的运行环境(比如 Python 的 uv/pip 包管理器、Node.js 等)
  3. 把你本地的代码传上去
  4. 装依赖、启动服务
  5. 配置 Nginx 反向代理(下面解释)和域名
  6. 自己用浏览器打开网址,测试能不能访问
  7. 最后给你一个浏览器能打开的网址

AI 还会自己测试

视频里 AI 部署完,直接调用了 Playwright MCP(一个能自动操作浏览器的工具),自己打开网址、输入账号密码、登录验证,全程不用你点一下。这就是 第23课 讲的 MCP 的威力——AI 不只会"想",还会"动手"。

5.1 什么是 Nginx 反向代理?

部署过程中 AI 会提到一个词:Nginx

不用怕,它就是公司的前台。外人来访,先到前台;前台问清楚你找谁,再把你带到对应的办公室。

Nginx 干的就是这事:外面的人访问你的服务器,先到 Nginx;它根据地址,把请求分发给后端、数据库、前端等不同服务。你不用懂它怎么配,AI 会帮你写好。

5.2 国内网络慢?让 AI 换"镜像源"

视频里我把驾驶舱部署到家里的 Mac mini 上,因为走的是家庭网络,装 Python 依赖时特别慢。这时让 AI 用国内的镜像源(相当于"国内的高速下载通道"),速度立刻快很多:

装依赖太慢了,请用国内的镜像源加速。

如果你买的是云服务器,一般没这问题——云厂商的网络本来就是通的。


6. 两种部署方式:Docker 和裸机

部署时,AI 会问你或自己选择一种方式。简单了解下区别就行。

6.1 方式 A:Docker(推荐)

视频里我打了个比方:Docker 就像集装箱

把驾驶舱需要的所有零件(后端、数据库、前端)各装进一个"集装箱",互不干扰,一条命令全部启动。

  • 干净:不污染服务器的系统环境
  • 搬家方便:换台服务器,"集装箱"搬过去一样能跑
  • AI 最擅长:写个配置文件 docker-compose.yml 就能跑起来

一条命令启动(AI 会自动帮你敲):

bash
docker compose up -d

为什么推荐 Docker?因为以前手动部署时,Docker 能省大量配环境的麻烦。现在交给 AI,虽然 AI 也能搞裸机,但 Docker 的"干净、好搬家"优势依然在。

6.2 方式 B:裸机部署(备选)

公司 IT 不让用 Docker?没关系,告诉 AI:

"我们公司不让用 Docker,请用裸机方式部署。"

AI 会用 gunicornsystemdnginx 这些传统工具搞定,你一个都不用学


7. 域名和 HTTPS:给驾驶舱挂个正式招牌

部署完,你能用 IP 地址访问了,但地址栏会显示一串数字,而且走的是 HTTP(明文,不安全)。想正式上线,还得配域名HTTPS

7.1 三个概念一次说清

  • 域名:给 IP 起的好记的名字,比如 cockpit.yourcompany.com。去云厂商买,几十块/年。
  • HTTPS:把 http 变成 https,浏览器不再报"不安全",数据传输加密。内部敏感数据尤其需要。
  • 证书:让浏览器信任你"确实是这个域名主人"的凭证。免费的Let's Encrypt,让 AI 自动申请;云厂商也有免费一年证书。AI 还会定期帮你自动续期。

7.2 三个大坑(提前避雷)

说明解决
坑1·备案国内服务器绑域名要 ICP 备案,约 20 天,不备案域名打不开用境外服务器可绕开
坑2·国内服务器配 HTTPS 失败国内云厂商常封 80 端口(网页默认通道),导致免费证书申请失败告诉 AI:"国内服务器,请用 DNS 验证方式申请证书",它会自动绕开
坑3·内网根本不需要只在公司内网用?直接 IP 访问就行域名、HTTPS 整个可以省掉

真要配,把需求丢给 AI

这部分你只需要讲清概念(公网还是内网、要不要 HTTPS),具体配置 AI 全包。


8. 上线前,别踩这些坑(生产环境安全清单)

驾驶舱要给公司正式用了,上线前过一遍这张清单:

要点为什么怎么做
🗂️ 先存档能回退部署出问题能回到上一版部署前先 git commit第20课
💾 数据库要备份别让几个月数据因硬盘坏了全没让 AI 配定期自动备份
🔒 数据库端口别外露数据库一旦对公网开放,等于裸奔只开必要端口,数据库端口绝不对外开放
🔄 开机自启服务器重启后驾驶舱自动恢复让 AI 配好开机自启
👤 别用 root 跑服务root 权限太大,被攻破后果严重告诉 AI"帮我新建普通用户跑服务,别用 root"
🔐 设强密码第27课 权限后台的默认密码 admin/admin123! 公网不能用用密码管理器设一个强密码

公网访问,密码一定要强

本地随便设个密码没事,一旦上了公网,弱密码分分钟被破解。用密码管理器(比如 Bitwarden)生成一个又长又随机的密码。

8.1 公网还是内网?决定要不要登录

部署前想清楚一个问题:这个驾驶舱给谁看?

  • 公网开放(所有人可访问,像课程答疑站、陈版主答疑网站):必须有账号密码系统,只有授权的人能登录
  • 内网专用(只给公司内部看):可以直接访问,但仍建议配权限

把你的安全需求明确告诉 AI,它会帮你做相应的安全改造。


9. 让 AI 记住你的服务器:/init 命令与 AGENTS.md

视频里有个细节:我跟 AI 说"部署到我的服务器",它直接就知道我有哪些服务器、各自的 IP 和用途——它怎么知道的?

答案在一个文件里:AGENTS.md

9.1 AGENTS.md 是什么?

AGENTS.md 是 AI 的**"项目说明书 + 全局记忆"**。它放在项目根目录,AI 每次启动都会自动读取。你可以在里面写:

  • 项目是干嘛的、用了什么技术栈
  • 有哪些服务器(IP、用途、别名)
  • 编码规范、提交流程
  • 任何你想让 AI 长期记住的规则

视频里我把几台服务器的信息写进了 AGENTS.md,所以 AI 一听"部署到服务器",就能自动对号入座。

9.2 OpenCode 的 /init 命令:一键生成记忆文件

手写 AGENTS.md 太麻烦?OpenCode 提供了一个斜杠命令 /init

在 OpenCode 里输入:

/init

AI 会自动分析你的项目(技术栈、目录结构、依赖等),然后生成一份 AGENTS.md,把项目的基本情况写进去。生成的只是初稿,你可以再往里补充自己的规则(比如服务器信息、提交流程)。

一句话:/init 就是让 AI 帮你写一份"项目说明书",省得你从零手敲。

9.3 三个工具的对比:记忆文件都叫啥?

不同 AI 编程工具,记忆文件和初始化方式略有不同:

工具记忆文件初始化命令说明
OpenCodeAGENTS.md/init(斜杠命令,自动生成)输入 /init,AI 分析项目后自动生成
Claude CodeCLAUDE.md/init(斜杠命令,自动生成)用法一样,生成的文件名不同
Codex(OpenAI)AGENTS.md/init(斜杠命令,自动生成)用法一样,Codex 启动时自动读取 AGENTS.md

它们的共同点

三个工具都有 /init 命令,都能一键生成记忆文件,AI 启动时自动读取。唯一的区别是文件名:OpenCode 和 Codex 用 AGENTS.md,Claude Code 用 CLAUDE.md,作用完全一样。

所以无论你用哪个工具,/init 一敲,AI 就帮你把"项目说明书"写好——你只需要往里补充自己的规则(比如服务器信息)即可。学会维护这份记忆文件很值,它能让 AI 每次都带着你项目的全部上下文来干活。

9.4 部署相关,AGENTS.md 里建议写什么

把这段加进你的 AGENTS.md,AI 部署时会更省心:

markdown
## 服务器信息
- 别名 myserver,公网 IP 123.45.67.89,系统 Ubuntu
- SSH 已配免密(本地可直接 ssh myserver)
- 用途:部署数据驾驶舱

## 部署规则
- 优先用 Docker 部署
- 每次部署前先 git commit
- 数据库端口禁止对外暴露

别把密码写进去

AGENTS.md 一般会进版本库,密码、密钥这类敏感信息绝对不要写。密码用密码管理器存,部署时临时给 AI 即可。


10. 整个流程回顾

回头看,部署上线其实就三步:

第1步:准备一台服务器(境外云最省事)

第2步:配 SSH 免密钥匙(唯一手动的一次,配一次终身受用)

第3步:把部署整段丢给 AI(它连服务器、装环境、传代码、配域名证书、自己测试)

你全程不碰服务器,看着 AI 在你电脑里操控远程服务器就行。


关键收获

TIP

数据驾驶舱三连至此完成:第26课架构第27课实施第28课部署

这节课的核心:

  • 部署 = 你配一把 SSH 钥匙 + AI 干剩下所有
  • SSH 免密是"让 AI 当运维"的前提,配一次终身受用
  • Docker 部署最干净、搬家方便;裸机是公司不让用 Docker 时的备选
  • 域名 + HTTPS 是公网标配,内网可省;遇到备案/端口坑,把现象告诉 AI 就行
  • /init 命令一键生成 AGENTS.md,让 AI 记住你的项目和服务器

从今天起,你不只是一个会用 AI 写代码的人,还是一个能让 AI 帮你把系统搬上云端的人。你的 AI 工作系统,初具规模。


下一步

到这里,你已经能独立完成"想一个系统 → 让 AI 搭架构 → 实施 → 部署上线"的全流程了。

接下来,我们会把视角从"做一个系统"拉回到"用 AI 提升日常效率"——看看怎么把这些能力用在你真实的审计、财务工作里。

📎 这节课用到的部署指令、AGENTS.md 模板,都会打包放到课程百度网盘,群公告里有链接。

© 2025 逆行的狗