赞
踩
最近沉迷DevOps无法自拔,越研究越觉得以前的自己很傻很天真,有那么多优秀的工具都没有运用起来,真正串联起来之后才发现,原来效率可以提升那么多。
这篇文章就总结一下最近学习的东西,因为涉及前端比较多一些,再加上后面又想写一个前端的项目,所以打算这次整理出一个流程,贯穿前端项目的从开始到部署。
准备工作:
.gitignore
文件,这一步非常重要,不然后面上传代码的时候会把所有的东西都上传到GitCode或者GitHub,导致仓库可能几十M甚至几百M。几种常见项目的.gitignore
文件可以查看以下链接:https://gitcode.net/matrixstudio/gitignore两个仓库之间要保证代码同步,可以通过镜像实现。
首先填写AccessToken的名字,然后设置token永久有效,再把所有的权限都选上,最后点击生成Token。
拿个小本本记住这个Token值,它只会在这个页面显示一次,点击复制。
注意这里填写的仓库URL需要添加用户名,然后选择推送仓库,密码填写的就是前面在GitHub生成的AccessToken。
在本地生成SSH秘钥,可以使用一下命令(替换为自己的邮箱):
ssh-keygen -t rsa -b 2048 -C "email@example.com"
一路回车,可以看到类似以下内容:
使用以下命令复制公钥:
cat C:\Users\liu_z/.ssh/id_rsa.pub | clip
在GitCode添加公钥:
git init
git remote add origin git@gitcode.net:matrixstudio/aiot_frontend.git
git add .
git commit -m "Initial commit"
git push -u origin master
本地推送成功:
GitCode上传代码成功:
GitHub代码镜像成功:
没有域名的话可以用服务器的IP:PORT
ssh-keygen -t rsa -b 2048 -C "email@example.com"
cat .ssh/id_rsa.pub >> .ssh/authorized_keys
.github/workflows/node.js.yml
文件# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions name: Node.js CI on: push: branches: [ "master" ] pull_request: branches: [ "master" ] jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [16.x] # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} cache: 'npm' - run: npm ci - run: npm run build --if-present - name: deploy uses: easingthemes/ssh-deploy@v2.1.5 env: SSH_PRIVATE_KEY: ${{ secrets.SERVER_SSH_KEY }} SOURCE: dist/* REMOTE_HOST: '121.37.67.75' REMOTE_USER: root TARGET: /www/wwwroot/www.aiot.matrixstudio.site
需要修改的地方就是最后几行:
只需要等待GitHub的Action执行完成,刷新一下页面,就可以发现,服务器上的网站就自动刷新部署了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。