这里讲简单的写个GitHub actions脚本部署项目到GitHub pages中和部署到自己的服务器中
GitHub actions的参考可先看以便暂时了解:
www.ruanyifeng.com/blog/2019/0…
部署至GitHub pages
开启GitHub pages
打开自己的git仓库
pages中需要选择的分支就是GitHub pages展示的项目分支, 可以想成是打包后的文件所放的分支
将这个地址复制到项目中的package.json中并添加
"homepage": "https://yzyaz.github.io/yzy-test-action"
注: 在react脚手架中加了homepage会给打包后的项目增加路径如
类似baseUrl的功能, 如果是其他项目如vue就要考虑是否应该配置下他的baseurl以免线上找不到路径
配置GitHub actions
在项目根目录新建文件夹.github/workflows
里面新建以.yml结尾的文件夹, GitHub actions就会自动识别这种文件, 并作出对应的操作
上面就构成了个简单的配置,
1 切换分支,
2 下载并打包
3 部署至GitHub pages (用的是这个库:github.com/JamesIves/g… 配置可参照其git文档)
库变量
上面有secrets.ACCESS_TOKEN是需要部署至GitHub pages的token,
作用就是配置一些不方便暴露出去的变量, 如密码等
先将哪里写入库变量:
再讲下哪里获取这个token:docs.github.com/en/authenti…
这样就可新建个token, 将其添加到上面的secrets库变量即可
配置GitHub pages的分支
上面讲到
这里讲把他加上, actions配置中有个branch就是他会生成的分支, 这个分支即可部署到pages, 把这个分支写上即可, (写不上可以先推上去, 触发了actions成功后会有个gh-pages分支可选)
运行GitHub actions
这个不用特别的配置, 只要配置文件没问题, 我们直接推上去, 他会触发并运行,
点进去就可见我们设置的部分操作
完成后可见
\
GitHub actions的功能还有很多, 不止如此, 如测试,部署到自己的服务器等等, 这里先不讲了
部署至服务器
按照其配件即可
server是服务器ip地址, ssh_private_key是私钥, local_path是需要上传的文件, remote_path是上传到的文件夹位置(一定要有这个文件夹, 没得会报错)
================================
补充:
- appleboy/scp-action@master这个库上传文件可用密码也可用ssh链接(比上面个更方便)
2.如何将nextjs项目部署至服务器并启动
3.通过docker启动项目
注: 如上很多对服务器的操作都可以通过ssh-action来进行了, 包括你想直接在服务器pull代码打包或者操作docker启动容器等等都是ok的, 看个人的想法