在阿里云轻量应用服务器(Simple Application Server, SAS)上部署项目,通常遵循“系统初始化 → 环境安装 → 代码上传 → 服务配置 → 启动运行”的流程。由于轻量服务器预装了常见镜像(如 CentOS、Ubuntu),且操作相对简化,以下是通用部署步骤:
一、前置准备
-
购买并登录轻量服务器
- 登录 阿里云控制台
- 进入「轻量应用服务器」→ 选择实例 → 点击「远程连接」(推荐使用 VNC 或 SSH)
- 首次使用需设置 root 密码(若未自动分配)
-
确认网络与安全组
- 检查【安全组规则】是否放行必要端口(如 80/443/Web 服务端口、SSH 的 22)
- 路径:控制台 → 实例详情 → 安全组 → 入方向规则
- 若使用域名访问,确保 DNS 已解析到服务器公网 IP
- 检查【安全组规则】是否放行必要端口(如 80/443/Web 服务端口、SSH 的 22)
二、基础环境搭建(以 Ubuntu 22.04 为例)
# 更新系统
sudo apt update && sudo apt upgrade -y
# 安装常用工具
sudo apt install -y curl wget git vim htop net-tools
# 根据项目类型安装运行时环境
# Java (Spring Boot):
sudo apt install -y openjdk-17-jdk
# Node.js (LTS):
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
# Python:
sudo apt install -y python3 python3-pip python3-venv
# Go:
wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
# Nginx(反向X_X/静态资源):
sudo apt install -y nginx
# MySQL/PostgreSQL(如需数据库):
sudo apt install -y mysql-server
# 或
sudo apt install -y postgresql
💡 提示:也可通过阿里云镜像市场选择「带环境的一键镜像」(如 LAMP、LNMP、Java 等),直接跳过手动安装步骤。
三、上传项目代码
方式 1:使用 scp(本地终端)
# 打包项目
tar czvf myproject.tar.gz ./myproject
# 上传至服务器(替换 <IP> 和用户名)
scp myproject.tar.gz root@<服务器公网IP>:/root/
# 解压
ssh root@<服务器公网IP>
cd /root
tar xzf myproject.tar.gz
rm myproject.tar.gz
方式 2:使用 Git 克隆(推荐)
git clone https://github.com/yourname/your-project.git
cd your-project
方式 3:使用 SFTP 工具(如 FileZilla、WinSCP)
- 连接地址:
sftp://<公网IP> - 用户:root(或普通用户 + sudo)
- 密码:你设置的登录密码
四、配置与启动项目
示例:Spring Boot 应用
# 进入项目目录
cd /root/myproject
# 构建(如需要)
mvn clean package -DskipTests
# 后台运行
nohup java -jar target/your-app.jar > app.log 2>&1 &
# 查看日志
tail -f app.log
示例:Node.js + PM2(进程管理)
npm install pm2 -g
pm2 start app.js --name "myapp"
pm2 save
pm2 startup # 设置开机自启
示例:Nginx 反向X_X
编辑 /etc/nginx/sites-available/default:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:3000; # 前端服务端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
重启 Nginx:
sudo nginx -t && sudo systemctl restart nginx
五、进阶优化建议
| 需求 | 方案 |
|---|---|
| HTTPS | 使用 Let’s Encrypt + Certbot:sudo apt install certbot python3-certbot-nginxsudo certbot --nginx -d your-domain.com |
| 定时任务 | crontab -e 添加任务(如每日备份) |
| 监控告警 | 安装 Prometheus + Grafana,或使用阿里云云监控(免费) |
| 数据库持久化 | 将数据目录挂载到云盘(控制台 → 磁盘管理) |
| 多环境隔离 | 使用 Docker 容器化部署(轻量服务器支持 Docker) |
六、常见问题排查
- ❌ 无法访问网站?
→ 检查防火墙(ufw status)、安全组、Nginx 监听端口(netstat -tlnp | grep :80) - ❌ 权限拒绝?
→ 使用sudo或修改文件所有者:chown -R www-data:www-data /var/www/html - ❌ 内存不足?
→ 轻量服务器有最低 512MB 限制,大项目建议升级配置或加 Swap:sudo fallocate -l 2G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
需要我针对具体技术栈(如 Vue+SpringBoot、Django、Go微服务等)提供定制化部署脚本吗?欢迎告诉我你的项目类型 😊
CLOUD云枢