自动化构建部署 github 仓库到国内的服务器

14次阅读

共计 792 个字符,预计需要花费 2 分钟才能阅读完成。

背景说明

最近在部署 nodejs 的项目时遇到一个问题,这个项目本身规模较小,没有采用标准的 CICD 流程,也没有 K8S 或者 docker 的容器化,因此只是在一个云服务器上简单的执行一下启动命令。
原初,就是简单的登录服务器,从 github 仓库拉取代码,然后执行构建,最后启动服务。
但是后来发现有两个问题:
一是 github 连接经常不稳定,当然这个可以通过代理地址解决。第二个问题是这个项目在执行 node 的构建命令时候 cpu 占用非常高,而这个某云厂商的边角料轻量云服务器,cpu 占用一高之后居然无响应了,无法登录终端,停止不了构建进程。只能重启机器。
基于以上问题,我决定把构建流程从服务器中抽离出来。这件事最简单的办法就是本地构建,然后把构建后的文件上传到服务器。不过我因为一些原因不想要本地做构建,于是便有了这个方案。

核心概述

详细内容可以查看公众号原文(公众号 奕象派):https://mp.weixin.qq.com/s/qMg_OEBNghalFq2wjAzkTw
这里简单概述核心内容,因为基本上看这几句话知道什么意思也就足够了。

  1. 使用 coding.net 的服务
  2. 关联 GitHub 仓库,这样就不用迁移仓库到 coding 了,很良心
  3. 配置构建计划,计划里拉取代码到运行的容器环境里,然后执行构建命令就行了。coding 的配置功能很强大,还免费
  4. 配置 ssh 密钥,用于将构建后的代码上传到目标服务器。ssh 密钥是可以在凭证管理页面安全管理的,不必要明文暴露到脚本中。

核心就是这么几个步骤,其中有一些我在操作时的踩的坑在原文里描述了。

欢迎关注

我也是刚决定并开始做公众号,我打算将我平常工作中的一些技巧性的知识,开发中踩过的各种坑,以及拥有的行业经验(全栈开发、产品设计、以及现在正在做的 AI 相关领域的知识)一点点的分享出来。同时也是一个自我总结。
总之,欢迎关注公众号以及加入交流群(在公众号菜单里直接加群)。

自动化构建部署 github 仓库到国内的服务器

正文完
 0