
摘要: 把本地跑通的程序部署到云服务器,完整流程是:买一台云服务器 CVM、上传代码、装运行环境、后台运行程序、开安全组端口、再用域名指向它。本文按真实部署顺序讲清每一步和易错点,让本地能跑的程序变成外网能访问的线上服务。
「本地能跑,上线就崩」是部署新手的噩梦,根源在于:本地有的环境,云服务器上不一定有;本地不用管的端口、进程、公网访问,上云后全要你操心。把程序部署到云服务器 CVM,本质是把本地那套运行条件在云端复刻一遍,再把门(端口、域名)对外打开。这篇按真实流程走一遍,把每个容易翻车的点标出来。
先把全流程拆清楚:
步骤 | 做什么 | 关键点 |
|---|---|---|
| 开通一台云服务器 CVM | 选够配置、就近地域 |
| 把程序上传到服务器 | SSH / Git / 工具均可 |
| 复刻本地运行环境 | 版本要对齐 |
| 后台稳定运行程序 | 别用前台进程 |
| 安全组放行服务端口 | 最容易漏的一步 |
| 域名指向服务器 | 让别人好访问 |
六关里,第 3 关(环境对齐)和第 5 关(安全组)是翻车重灾区,下面重点讲。
云服务器 CVM 提供弹性计算,按实际使用付费。开通时的选择:
CVM 支持按量计费和包年包月,先按量试跑、稳定后转包年更省。
本地代码上云服务器,常用三种方式:
git clone 你的仓库,适合有版本管理的项目,后续更新也方便;推荐用 Git:不仅传代码,后续更新 git pull 一下就行,比每次手动传文件可靠。
这是「本地能跑、线上崩」的头号原因。本地有的运行时、依赖、环境变量,服务器上得一一装齐、版本对齐:
一个实用习惯:在服务器上先手动跑一次程序,看能不能启动、报什么错,把环境问题在这一步暴露并解决,别急着后台化。
本地你可能直接 node app.js 前台跑,但服务器上这样不行——SSH 一断程序就停。要让它常驻后台:
推荐用进程管理工具或 systemd,让程序断线不停、崩溃自愈。这是「线上服务」和「本地脚本」的本质区别。
程序在服务器上跑起来了,本地 curl 也通了,但外网就是访问不了——十有八九是安全组没放行端口。
CVM 的安全组相当于防火墙,默认只开有限端口。你的服务监听哪个端口(比如 3000、8080),就要在安全组里加一条入站规则放行它。Web 服务还要放行 80(http)、443(https)。
这一步几乎是每个新手都会漏的坑:程序没问题、环境没问题,就卡在安全组。记住:服务端口不在安全组放行,外网一律访问不到。
用 IP:端口 访问不体面,绑个域名:注册域名、实名认证、在 DNS 解析里加 A 记录指向服务器公网 IP。如果服务跑在非标准端口,通常会在前面加一层 Nginx 做反向代理,把 80/443 的请求转发到你的程序端口,这样用户访问域名就不用带端口号。
程序上线后,让它更稳更专业,还要:
想了解云服务器 CVM 的配置套餐与价格,可前往腾讯云双十一活动页查看并选购:https://cloud.tencent.com/act/pro/double11-202611
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。