在阿里云轻量应用服务器(Simple Application Server, SAS)上部署项目,通常遵循“系统初始化 → 环境安装 → 代码上传 → 服务配置 → 域名与网络”的流程。由于轻量服务器默认是 Linux 系统(如 Ubuntu、Debian、CentOS),以下是通用的部署步骤指南:
一、基础准备
- 登录控制台
访问 阿里云官网 → 登录 → 进入「轻量应用服务器」控制台 → 选择目标实例 → 点击「远程连接」。 - SSH 登录
使用终端工具(如 macOS/Linux 的 Terminal,Windows 的 PowerShell/SecureCRT/Xshell)通过 SSH 连接:ssh root@<你的公网 IP> # 首次连接需确认指纹,输入密码或密钥登录
二、系统初始化(推荐操作)
# 更新系统包
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
# 或
sudo yum update -y # CentOS 7+
# 安装常用工具
sudo apt install curl wget git vim net-tools -y # Ubuntu/Debian
sudo yum install epel-release -y && sudo yum install -y curl wget git vim net-tools # CentOS
# 设置防火墙(轻量服务器默认已启用云防火墙,但建议检查本地规则)
sudo ufw allow OpenSSH # Ubuntu
# CentOS 8+ 使用 firewalld:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
三、安装运行环境(根据项目类型选择)
✅ 场景 1:Node.js / Python / Go 等语言项目
# Node.js (以 v18 LTS 为例)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
# Python (3.10+)
sudo apt install python3.10 python3-pip python3-venv -y
# Go (示例)
wget https://go.dev/dl/go1.21.5.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.21.5.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
✅ 场景 2:Java Spring Boot 项目
# 安装 JDK 17
sudo apt install openjdk-17-jdk -y
java -version
# 或使用 SDKMAN 管理多版本(推荐)
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java 17.0.9-tem
✅ 场景 3:PHP / WordPress
# 一键安装 LAMP/LNMP(轻量市场提供镜像更简单)
# 若自行安装:
sudo apt install nginx php-fpm mysql-server php-mysql -y
# 或参考阿里云官方文档:[LNMP 环境搭建](https://help.aliyun.com/document_detail/...)
💡 提示:阿里云轻量服务器提供「镜像市场」,可直接选择预装好环境的镜像(如
Ubuntu 22.04 + Nginx + PHP),大幅简化流程。
四、上传项目代码
方式 1:Git 克隆(推荐)
git clone <你的仓库地址> /var/www/myapp
cd /var/www/myapp
# 安装依赖
npm install # Node.js
pip install -r requirements.txt # Python
mvn clean package # Java
方式 2:SCP 上传文件
# 本地电脑执行
scp -r ./project-folder root@<IP>:/var/www/myapp
方式 3:使用 SFTP 工具(如 FileZilla)
- 连接信息:主机 = 公网 IP,端口 = 22,用户 = root,密码/密钥同上。
五、配置并启动服务
示例:Node.js 项目 + PM2 进程守护
# 安装 PM2
sudo npm install -g pm2
# 启动项目
pm2 start app.js --name myapp
pm2 save
pm2 startup systemd # 开机自启
示例:Spring Boot 直接运行
java -jar target/myapp.jar &
# 后台运行并记录日志
nohup java -jar target/myapp.jar > app.log 2>&1 &
示例:Nginx 反向X_X(静态站或前端项目)
# /etc/nginx/sites-available/myapp
server {
listen 80;
server_name example.com; # 替换为你的域名
location / {
proxy_pass http://localhost:3000; # Node.js 端口
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
六、开放安全组端口(关键!)
在阿里云控制台操作:
- 进入轻量服务器详情页 → 「安全组」标签页
- 添加入方向规则:
- 协议:TCP
- 端口范围:
80,443,自定义端口(如 3000) - 授权对象:
0.0.0.0/0(生产环境建议限制为特定 IP)
⚠️ 注意:轻量服务器默认只开放 80/443,其他端口需手动放行。
七、绑定域名与 HTTPS(可选但推荐)
- 解析域名
在 DNS 服务商处将A 记录指向服务器公网 IP。 - 申请 SSL 证书
使用 Let’s Encrypt(免费):sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx -d example.com # 自动配置 HTTPS 并重定向 HTTP→HTTPS
八、监控与维护
- 查看日志:
tail -f /var/log/nginx/error.log或pm2 logs - 备份数据:定期用
tar打包 + 上传 OSS - 升级系统:
apt upgrade或yum update
需要我针对具体技术栈(如 Vue + Spring Boot + MySQL 全栈部署)提供完整脚本模板吗?或者你遇到某个环节卡住了(比如权限错误、端口不通)?欢迎告诉我细节,我可以给出精准解决方案 🛠️
CLOUD技术博