在Ubuntu上实现Node.js的自动化部署可以通过多种方式实现,以下是使用GitHub Actions实现自动化部署的步骤:
1. 创建GitHub Actions工作流
在你的项目根目录下创建一个.github/workflows文件夹,然后在该文件夹中创建一个deploy.yml文件。
2. 配置工作流文件
在deploy.yml文件中配置以下内容:
name: Deploy to GitHub Pages
on:
push:
branches:
- main
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install dependencies
run: npm install
- name: Build project
run: npm run build
- name: Deploy to GitHub Pages
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages
folder: dist
3. 启用GitHub Pages
进入你的GitHub仓库的Settings,在左侧菜单选择Pages,选择gh-pages分支,点击Save。等待GitHub Actions运行完毕,你的前端项目就会自动部署到https://你的用户名.github.io/你的仓库名/。
4. 部署到自己的服务器(Nginx + GitHub Actions)
如果你的前端项目需要部署到自己的服务器,可以使用SCP命令进行自动上传。修改deploy.yml文件如下:
name: Deploy to Server
on:
push:
branches:
- main
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install dependencies
run: npm install
- name: Build project
run: npm run build
- name: Deploy to server
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
SERVER_USER: "your-user"
SERVER_HOST: "your-server-ip"
DEPLOY_PATH: "/var/www/html"
run: |
echo "$SSH_PRIVATE_KEY" > private_key.pem
chmod 600 private_key.pem
scp -o StrictHostKeyChecking=no -r dist/* $SERVER_USER@$SERVER_HOST:$DEPLOY_PATH
需要在GitHub Secrets配置SSH_PRIVATE_KEY,用于SSH免密登录服务器。DEPLOY_PATH是你的服务器Web目录,Nginx需要指向这个路径。
以上步骤展示了如何在Ubuntu上使用GitHub Actions实现Node.js项目的自动化部署。根据具体需求,你可能还需要配置CI/CD工具、服务器环境、部署脚本等,以确保部署流程的顺利进行。
以上就是关于“ubuntu nodejs如何实现自动化部署”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm