Skip to content

001. 选购云服务器

学习目标

先不写 AI 代码,而是为后续实战项目准备运行环境。

学完后,你应该能回答:

  • 为什么 AI Agent 课程一开始要先买服务器?
  • 只有 JS 开发经验时,服务器规格应该怎么选?
  • 腾讯云轻量应用服务器和普通云服务器大概有什么区别?
  • 为什么课程暂时不买 GPU 服务器?
  • 如何用 FinalShell 连接 Linux 服务器?
  • 如何进入宝塔面板,并理解它能帮我们做什么?

第一章安排

第一章包括 5 个小节:

小节主题
1.1实战项目部署
1.2不要带着焦虑学习
1.3基础工具框架介绍
1.4实战项目介绍
1.5在业务中融合人工智能

先讲服务器,是因为实战项目部署有些环节需要等待。

先把服务器买好、连上、初始化好,后面等待安装时再穿插讲工具、框架和项目背景。

为什么先部署实战项目?

课程后面会涉及多个实战项目,但它们不是完全割裂的项目。

这些项目底层会共用同一个系统。第一个项目可以理解成一个“基础平台”:

  • 它有前端;
  • 它有后端;
  • 它有数据库;
  • 它有 AI 调用能力;
  • 它会封装一些基础的增删改查能力;
  • 它会为后续业务项目打底。

有了这个基础平台之后,再继续扩展业务:

  • 智能报销系统;
  • 企业级文档知识库;
  • 在传统系统里融合 RAG;
  • 后续可能扩展成智能电商、智能餐饮等类似业务系统。

对只写过 JS 的同学来说,可以先这样理解:

先做一个真实可部署的 Web 系统,再把 AI 能力接进系统。

后面会用到哪些技术?

这里先建立概念,不要求马上全部学会。后面用到时再细讲。

技术定位理解方式
Docker用容器方式安装各种软件像把 MySQL、Redis 分别装进独立“小虚拟机”,方便安装、重启、卸载
FastAPIPython 后端异步框架可以类比 Node 后端框架,但它属于 Python 生态
SQLModel / ORM用面向对象方式读写数据库类似你用 JS 对象操作数据模型,而不是到处手写拼 SQL
MySQL业务数据库存用户、报销单、系统业务数据
SQL数据库查询语言AI 可以帮你写,但你必须能判断它写得对不对
Redis快速缓存缓存用户信息、API Key 等高频读取数据
Milvus向量数据库后面做 RAG、文档分块和相似检索会用到
RAG文档知识库检索增强让 AI 回答前先从你的资料里找相关内容
LlamaIndexRAG 相关工具后面讲传统系统如何融合 RAG 时会出现
Ant Design前端组件库后续前端页面会用它搭界面
TypeScript全程主要语言之一前端必备技能,需要提前补

重要学习态度:

AI 可以帮你更快实现东西,但代码、SQL、业务逻辑对不对,仍然需要人验证、审核和监督。你可以让 AI 写,但不能完全不会。

服务器配置怎么选?

情况一:你现在什么服务器都没有

最低推荐:

  • 2 核 CPU
  • 4GB 内存

CPU 核数不是最关键的参数,内存大小更关键。后面要部署的东西很多,2GB 内存很容易不够用。

情况二:你之前已经买过 2 核 2GB 服务器

如果你之前跟别的课程买过一台 2 核 2GB 的服务器,这次仍然建议再买一台 2 核 4GB

这套实战项目最好部署在同一台服务器上,2GB 内存不够稳。

原来的 2 核 2GB 服务器后面仍然可能用得上,比如部署 Dify 或办公平台。

情况三:预算比较宽松

可以直接买:

  • 2 核 CPU
  • 8GB 内存

这会更宽松,但不是最低要求。

硬盘和带宽

  • 硬盘不要低于 50GB
  • 带宽不强制很高,但 5Mbps 比较合适;
  • 带宽主要影响上传、下载和多人访问速度;
  • 如果未来面试时多人同时打开你的在线项目,带宽太低会更容易卡。

买多久合适?

使用目标建议购买时长原因
长期学习和长期积累3 年可以持续部署项目、博客、演示地址,作为长期作品集
学完后准备找工作1 年足够用于部署实战项目,并在面试时给面试官演示
只是体验部署流程1 个月成本低,适合先体验云服务器环境

按自己的目标和预算决定即可。

为什么选轻量应用服务器?

  • 普通云服务器 CVM;
  • 轻量应用服务器。

可以用“单点”和“套餐”理解:

  • 普通云服务器 CVM:像单点,可以单独调整 CPU、内存、带宽、硬盘等配置;
  • 轻量应用服务器:像套餐,内存、带宽、硬盘等通常绑定在一起,更便宜,但可定制程度低。

本课程当前选择轻量应用服务器,原因是便宜、够用、适合学习和实战部署。

为什么现在不买 GPU 服务器?

暂时不用买 GPU 服务器。

GPU 服务器主要用于:

  • 私有化部署模型;
  • 模型微调;
  • 后面专门做模型相关实战时按量购买。

当前阶段先把业务系统和 AI 调用平台搭起来,不需要一开始就买昂贵的 GPU 服务器。

可以不用云服务器,在本机虚拟机里做吗?

可以,但不推荐作为首选。

本机虚拟机和真实云服务器的企业级部署环境差别比较大。想掌握更接近真实工作的部署流程,至少可以买一个月云服务器体验。

本机开发只是“写代码”,云服务器部署才更接近“把系统交付给别人使用”。

腾讯云购买流程

没有云服务器使用经验时,按这个顺序走:

  1. 打开腾讯云活动页或轻量应用服务器页面;
  2. 选择轻量应用服务器;
  3. 根据自己的情况选择 2 核 4GB 或 2 核 8GB;
  4. 选择购买时长;
  5. 选择地域;
  6. 镜像选择 宝塔 Linux 面板
  7. 其他不需要的附加购买项可以先不管;
  8. 点击立即购买并付款。

地域选择的原则:

你想在哪里发展、在哪里找工作,就优先选离那里近的地域。地域远近会影响访问速度。

例如你在北京、也希望找北京的工作,就优先选北京地域。

企业环境里的账号注意事项

真实企业项目里,不要用自己的个人账号给公司买服务器。

企业里应该:

  • 用企业账号;
  • 由老板或法人完成账号创建和认证;
  • 用企业认证方式购买服务器;
  • 不要把公司资产挂在个人名下。

现在课程学习阶段,只能用自己的账号购买,这是学习场景的临时做法。

购买后在哪里管理服务器?

购买完成后,在腾讯云控制台里可以看到新买的轻量应用服务器。

  • 控制台;
  • 最近访问;
  • 轻量应用服务器管理页;
  • 站内信。

服务器创建完成后,腾讯云会发站内信,里面会包含服务器相关信息,比如用户名、密码等。

如果云平台使用过程中遇到问题,可以提交工单给云厂商客服。

用 FinalShell 连接 Linux 服务器

FinalShell 支持 Windows 和 macOS。安装完成后,第一次打开时左侧连接列表是空的。

基本连接流程:

  1. 在腾讯云服务器页面复制服务器 IP;
  2. 打开 FinalShell;
  3. 新建连接;
  4. 选择 SSH 连接;
  5. 名称可以填服务器 IP;
  6. 主机填写服务器 IP;
  7. 端口填写 22
  8. 认证方式选择用户名和密码;
  9. 用户名、密码使用腾讯云站内信或控制台给出的信息;
  10. 第一次连接时,接受并保存密钥;
  11. 看到命令行提示符,就说明已经连接成功。

端口 22 是什么?

绝大多数情况下,SSH 连接 Linux 服务器默认使用 22 端口。

银行、证券等对内网和安全要求很高的企业,可能会使用非默认端口。学习阶段和大多数普通云服务器,默认就是 22。

第一次看到 Linux 文件目录怎么办?

连接成功后,FinalShell 会显示服务器文件目录。

不要一看到一堆目录就头晕。现阶段只需要重点关注两个目录:

  • /www
  • /root

Linux 不像 Windows 那样常见 C 盘 / D 盘 的概念。它更像 macOS,从一个根目录开始,下面挂很多文件夹。

对于只写过前端的人,这里不要急着全部搞懂。先知道:

  • /root 通常和管理员用户相关;
  • /www 后面会和网站、部署文件有关;
  • 其他目录暂时不用看。

Linux 里不要乱按 Ctrl+C

在 Linux 命令行里,Ctrl + C 通常是 中断当前命令,不是复制。

例如你正在执行安装命令,按 Ctrl + C 可能会把安装过程打断。

在 FinalShell 里复制文本时,直接点界面上的复制按钮更稳,避免快捷键冲突。

获取宝塔面板账号和密码

这台服务器镜像选择的是宝塔 Linux 面板,所以服务器里已经内置宝塔。

  1. 在腾讯云服务器应用管理页面找到宝塔相关入口;
  2. 复制页面提供的命令;
  3. 在 FinalShell 终端里执行;
  4. 终端会输出宝塔面板的访问地址、账号和密码;
  5. 浏览器打开访问地址;
  6. 输入账号和密码登录宝塔。

宝塔初始密码可能只适合首次登录前获取。如果后面忘记密码,可以在终端里执行:

bash
bt

然后按菜单提示选择修改面板密码。

登录宝塔后先做什么?

第一次登录宝塔后,会出现协议和一些授权、特权提示。

  1. 滚动到底部,同意协议;
  2. 激活腾讯云和宝塔合作提供的特权;
  3. 进入推荐安装软件的界面;
  4. 选择最左侧的 LNMP 推荐组合;
  5. 取消 MySQL 5.7;
  6. 保留其他需要安装的组件;
  7. 点击一键安装;
  8. 等待安装任务完成。

为什么取消 MySQL 5.7?

MySQL 5.7 比较老,后面会安装更新一点的 MySQL 版本,所以这里先不装。

安装任务可能比较久。带宽越低,下载安装依赖包就越慢。

安装 Docker

  1. 进入宝塔的软件商店;
  2. 找到 Docker;
  3. 点击安装;
  4. 使用默认安装即可;
  5. 安装后任务列表会多一个安装任务。

Docker 的软件商店可以理解成“没有广告、免费的 App 商城”,可以搜索和安装很多软件,例如 WordPress、Ollama、Open WebUI、Stable Diffusion 等。

本课程后续会更多使用 Docker 安装软件,而不是每个软件都手动在 Linux 里一点点配置。

宝塔面板主要看什么?

服务器状态

宝塔首页会显示:

  • CPU;

  • 内存;

  • 硬盘;

  • 安全风险;

  • 流量和网络;

  • 安装任务。

  • 如果 CPU 长期跑满,可能是业务有问题,也可能是服务器中了挖矿病毒;

  • 如果内存随着时间一直增长,可能是后端服务有内存泄漏;

  • 2 核 4GB 部署完整套实战项目后,内存可能会用到比较高,基本是刚好够;

  • 硬盘不要少于 50GB。

网站 / Node / Python / 数据库

宝塔里有很多模块:

  • 网站:后面可能用于前端静态资源部署;
  • Node:如果部署 Node 后端服务,可以在这里管理;
  • Python:如果部署 Python 服务,可以在这里管理;
  • 数据库:宝塔也能管理数据库,但课程后续更倾向用 Docker 安装数据库;
  • 文件:可以像资源管理器一样浏览、上传、下载、压缩、删除文件;
  • 终端:可以在网页里执行 Linux 命令;
  • 日志:可以查看用户和系统操作记录;
  • 计划任务:后面可以用来定时重启后端、定时跑请求等;
  • 软件商店:安装各种软件。

宝塔面板主要方便“看”和做图形化管理;真正需要操作服务器时,命令行仍然很重要。

域名和 SSL:暂时不做

  • 域名备案和主机备案比较麻烦;
  • ICP 备案最好需要企业认证;
  • 企业认证通常需要营业执照;
  • 备案可能需要一两周;
  • 课程无法给每位同学提供企业资料。

境外服务器,例如香港服务器,域名和备案限制会有不同情况,但这不是当前重点。

学习心态:不要害怕服务器和命令行

很多前端同学一碰到服务器、Linux、SSH、命令行,就会有抵触心理。这里不要求你立刻精通 Linux,而是:

  • 不要一看到陌生界面就退缩;
  • 不要因为看不懂目录就焦虑;
  • 按视频一步一步做;
  • 先掌握当前需要的少数概念;
  • 后面项目做完,自然会熟悉 Linux。

代码最终要跑在服务器上,项目最终要部署给别人访问。

AI Agent 课程学习文档。