阿里云的轻量应用服务器如何部署项目?

在阿里云轻量应用服务器(Simple Application Server, SAS)上部署项目,通常遵循“购买实例 → 连接服务器 → 安装环境 → 上传代码 → 启动服务”的标准流程。由于轻量服务器预装了常用镜像且操作简化,适合个人开发者或中小项目快速上线。

以下是详细步骤指南:


一、准备工作

  1. 购买并创建实例

    • 登录 阿里云控制台
    • 进入「轻量应用服务器」→「创建实例」
    • 选择操作系统(推荐 Ubuntu 22.04 LTS 或 CentOS Stream 9)
    • 配置带宽(建议 ≥2Mbps)、磁盘等
    • 设置 root 密码或使用密钥对(SSH 更安全)
  2. 获取访问信息

    • 创建成功后,记录:公网 IP 地址端口(默认 22)、用户名(root 或 admin)

二、连接服务器

使用 SSH 客户端连接:

ssh root@<你的公网IP>
# 若使用密钥登录:
ssh -i /path/to/your-key.pem root@<你的公网IP>

✅ 提示:首次连接需确认主机指纹,输入 yes 即可。


三、安装运行环境(以常见技术栈为例)

场景 A:Node.js + Nginx + PM2(前端/全栈项目)

# 更新系统
sudo apt update && sudo apt upgrade -y

# 安装 Node.js(使用官方源)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs

# 安装 Nginx
sudo apt install nginx -y

# 安装 PM2(进程管理器)
sudo npm install pm2 -g

# 安装 Git(用于拉取代码)
sudo apt install git -y

场景 B:Java + Maven + Tomcat/Spring Boot

# 安装 JDK(以 OpenJDK 17 为例)
sudo apt install openjdk-17-jdk -y
java -version

# 安装 Maven(可选,若用 Spring Boot 可跳过)
sudo apt install maven -y

场景 C:Python + Flask/Django + Gunicorn

# 安装 Python 3.10+
sudo apt install python3.10 python3-pip -y

# 创建虚拟环境
python3.10 -m venv venv
source venv/bin/activate

# 安装依赖
pip install flask gunicorn

四、部署项目代码

方式 1:Git 拉取(推荐)

cd ~
git clone https://github.com/your-username/your-repo.git
cd your-repo

方式 2:本地打包上传(SFTP/SCP)

# 本地执行(Windows 可用 WinSCP 或 FileZilla)
scp -r ./project root@<你的公网IP>:~/project/

🔐 安全建议:

  • 不要将 .env、密钥文件直接提交到 Git
  • 使用 rsync 增量同步大项目更高效

五、配置与启动服务

示例:PM2 管理 Node.js 项目

pm2 start app.js --name my-app
pm2 save
pm2 startup systemd  # 生成开机自启命令,按提示执行

示例:Nginx 反向X_X(前后端分离)

编辑配置文件:

sudo nano /etc/nginx/sites-available/myapp

添加内容:

server {
    listen 80;
    server_name your-domain.com; # 或 IP

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_cache_bypass $http_upgrade;
    }
}

启用并重启:

sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

示例:Docker 部署(更灵活)

# 安装 Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
newgrp docker

# 编写 Dockerfile(在项目根目录)
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["npm", "start"]

# 构建并运行
docker build -t my-app .
docker run -d -p 3000:3000 --name my-app-container my-app

六、开放防火墙与安全组

轻量服务器默认已开启部分端口,但需确保:

  • 80/443(HTTP/HTTPS)
  • 自定义应用端口(如 3000、8080)
  • SSH 22(仅允许你信任的 IP,避免暴力破解)

👉 操作路径:
控制台 → 轻量应用服务器 → 点击实例 → 「防火墙规则」→ 添加入站规则

⚠️ 重要:生产环境务必配置 HTTPS(可用 Let’s Encrypt + Certbot)


七、监控与维护

  • 查看日志:journalctl -u nginx / pm2 logs
  • 资源监控:htop, free -h, df -h
  • 定期备份:tar czf backup.tar.gz ~/project
  • 自动更新:配置 unattended-upgrades(Ubuntu)

附加建议

需求 推荐方案
域名解析 在 DNS 服务商绑定 A 记录指向服务器 IP
HTTPS 证书 certbot --nginx -d your-domain.com
数据库 可自建 MySQL/Redis,或改用阿里云 RDS/PolarDB(更高可用性)
CI/CD 结合 GitHub Actions + SSH 自动部署

需要我针对你的具体技术栈(如 Vue3 + Spring Boot、Go + PostgreSQL、WordPress 等)提供定制化部署脚本吗?欢迎告诉我你的项目类型 😊

未经允许不得转载:云知道CLOUD » 阿里云的轻量应用服务器如何部署项目?