奋斗
努力

部署项目到esc服务器?

云计算

将项目部署到阿里云 ECS(Elastic Compute Service)服务器是一个常见的运维操作。以下是详细的步骤指南,帮助你顺利完成项目部署。


🚀 一、准备工作

  1. 购买并配置 ECS 实例

    • 登录 阿里云控制台
    • 创建一台 ECS 实例(选择操作系统如 CentOS、Ubuntu、Debian 等)
    • 设置安全组规则:
      • 开放 SSH(22端口)
      • 开放 HTTP(80端口)、HTTPS(443端口)
      • 如需其他端口(如 Node.js 的 3000),也需开放
  2. 获取登录信息

    • 记录公网 IP 地址
    • 获取登录密码或 SSH 密钥(.pem 文件)

🔐 二、连接到 ECS 服务器

使用 SSH 连接到服务器:

ssh root@你的公网IP

如果是 Ubuntu 系统,可能是:

ssh ubuntu@你的公网IP

如果使用密钥文件:

ssh -i /path/to/your-key.pem root@你的公网IP

提示:首次连接会提示是否继续,输入 yes 即可。


📦 三、安装必要的环境

根据你的项目类型安装对应运行环境:

✅ 示例:部署一个 Node.js + Nginx 项目

  1. 更新系统包
sudo apt update && sudo apt upgrade -y
# 或 CentOS:
# yum update -y
  1. 安装 Node.js(以 v18 为例)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs

验证安装:

node -v
npm -v
  1. 安装 PM2(进程管理工具)
npm install -g pm2
  1. 安装 Nginx(反向X_X)
sudo apt install nginx -y

启动并设置开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

📁 四、上传项目代码

有几种方式上传代码:

方法 1:使用 Git 克隆

git clone https://github.com/yourname/your-project.git
cd your-project
npm install

确保代码仓库是公开的,或配置 SSH 密钥用于私有仓库。

方法 2:本地上传(使用 SCP)

在本地电脑执行:

scp -r ./your-project root@你的IP:/root/

▶️ 五、启动项目

进入项目目录:

cd /root/your-project
npm run build  # 如果是前端项目

使用 PM2 启动(Node.js 服务):

pm2 start app.js --name "my-app"
# 或 npm start
pm2 start npm --name "my-app" -- start

查看运行状态:

pm2 list
pm2 logs

🔄 六、配置 Nginx 反向X_X

编辑 Nginx 配置:

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

修改 location 块,例如X_X到本地 3000 端口:

server {
    listen 80;
    server_name your-domain.com;  # 或你的公网IP

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_cache_bypass $http_upgrade;
    }
}

保存后测试配置并重启 Nginx:

sudo nginx -t
sudo systemctl restart nginx

🌐 七、访问项目

在浏览器中输入:

http://你的公网IP

如果一切正常,你应该能看到你的网站!


🔒 八、(可选)配置域名与 HTTPS

  1. 绑定域名

    • 在阿里云 DNS 控制台添加 A 记录,指向 ECS 公网 IP
  2. 申请 SSL 证书(免费用 Let’s Encrypt)

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your-domain.com

自动配置 HTTPS。


🧰 九、常用命令总结

功能 命令
查看 IP curl ifconfig.me
重启 Nginx sudo systemctl restart nginx
查看端口占用 netstat -tulnplsof -i:3000
查看日志 pm2 logstail -f /var/log/nginx/error.log
设置开机启动 pm2 startup + pm2 save

❗ 注意事项

  • 安全组务必开放所需端口(80, 443, 22)
  • 不要直接用 root 跑服务,建议创建普通用户
  • 定期备份数据和监控服务状态
  • 使用 .env 文件管理敏感信息,不要提交到代码中

如果你告诉我你的项目类型(如 Vue、React、Spring Boot、Django 等),我可以提供更具体的部署脚本和优化建议 😊

需要我生成一键部署脚本吗?

未经允许不得转载:云服务器 » 部署项目到esc服务器?