Web 如何使用circleci部署nuxt proj一旦对github有了新的提交
最近,我在GitHub中为myrepo创建了一个Web 如何使用circleci部署nuxt proj一旦对github有了新的提交,web,server,continuous-integration,continuous-deployment,circleci,Web,Server,Continuous Integration,Continuous Deployment,Circleci,最近,我在GitHub中为myrepo创建了一个dev分支,通过在ubuntu服务器中运行sh deploy-dev.sh来部署Nuxt应用程序。我发现每次推送提交后手动将我的项目重新部署到服务器相当耗时;因此,我试图找到在dev分支上进行新提交后自动部署应用程序的方法。 我已经阅读了一些关于CircleCI的文档,但我仍然很困惑。我已经在myrepo的CircleCI项目中添加了ssh密钥,将其作为步骤添加到config.yml中:-添加指纹-“FI:GE:RP:RI:T”,然后我遇到了连接问
dev
分支,通过在ubuntu服务器中运行sh deploy-dev.sh
来部署Nuxt应用程序。我发现每次推送提交后手动将我的项目重新部署到服务器相当耗时;因此,我试图找到在dev
分支上进行新提交后自动部署应用程序的方法。
我已经阅读了一些关于CircleCI的文档,但我仍然很困惑。我已经在myrepo的CircleCI项目中添加了ssh密钥,将其作为步骤添加到config.yml中:-添加指纹-“FI:GE:RP:RI:T”
,然后我遇到了连接问题,我应该如何实际运行deploy-dev.sh
。
如果我想:
dev
有新提交时运行测试version: 2
jobs:
build:
docker:
- image: circleci/node:10.19.0
working_directory: ~/dev
steps:
- checkout
- run: npm install
- run: npm run build
deploy:
machine:
enabled: true
steps:
- add_ssh_keys:
fingerprints:
- "FI:GE:RP:RI:T"
- run:
name: Deploy Over SSH
command: |
ssh USER@ADDRESS "sh dev/reploy-dev.sh"
workflows:
version: 2
workflow:
jobs:
- build
- deploy
下面是deploy-dev.sh
#!/bin/bash
pm2 stop dev
cd ~/dev/Myrepo
git checkout dev
git fetch
git pull
npm install
cp ../.env .env
npm run build
pm2 restart dev