前言
前段时间使用 Zeabur部署网站,官方提前写好了很多打包指令,个人开发者只需要发布到托管仓库就会自动部署。
一直以来个人项目都是手动部署的,要在腾讯云自动化部署,腾讯云也提供了简便的方法,但是适配的应用很少,而且从按需付费变包年包月模式,本来一个月 1 块不到,现在变成 15 块一个项目,一年下来基本和做活动的轻应用服务器价格差不多,不是很划得来
自己本来也有轻应用服务器,但是因为网站本身就是静态网站,需要自己手动部署,十分麻烦,外加轻应用服务器起步费用也高,除非做活动。
虽然网站已经部署在 Zeabur,以后公司项目可能也会使用自动化部署,提前学习也有必要,腾讯云也有类型 CI/CD 自动化部署的工具CODING DevOps
CODING DevOps
CODING DevOps是以项目为单位管理的,它是这样描述自己的:
CODING DevOps 一站式研发管理平台,包括代码托管、项目管理、测试管理、持续集成、制品库等多款产品和服务,涵盖软件开发从构想到交付的一切所需,使研发团队在云端高效协同,实践敏捷开发与 DevOps,提升软件交付质量与速度
和大多数 CI/CD 工具一样,需要自己写好部署代码,我在腾讯云自己的社区找到几篇旧的文章,使用 CODING DevOps 部署 Serverless 应用
和使用Coding Devops+自动构建以及部署博客
,基本有了个概念
CI/CD 流程,发布代码到托管平台,工具检查到代码更新并拉取更新,使用环境打包生产资料,并上传资料到指定服务器运行,实际上就是你自己打包手动部署的流程,复刻到工具里面,让工具帮你跑
怎么使用
总共这几个步骤
- 初始化仓库
- 准备打包环境
- 拉取最新代码
- 打包出生产资源
- 打包资源
- 链接服务器
- 上传资源
- 解压部署
是不是很像自己手动部署的步骤?
初始化仓库
首先要去注册一个账户,传送地址 CODING DevOps 注册地址
进入工作台,在左侧导航栏目中找到【项目】,点击进入
在接下来的界面中右上角找到新建项目,并新建项目
填写好项目内容,完成后悔自动跳转到项目内部
然后接着在左侧找到【代码仓库】,详见下图
进入【代码仓库】后,这边的操作基本和gitee或者github一样了,自己新建个同步仓库,并且把代码上传好
需要新建一个【构建计划】,根据下图新建一个
这边腾讯提供的模板没有合适的,需要自定义一个构建过程
先用默认的【Jenkinsfile 预览】,填写好自己的构建计划名称,并选择好代码仓库,选择静态配置的Jenkinsfile
,填写完成后滑动到底部点击【确认】,接下来就进入可视化的构建过程流水线
准备打包环境
【基础配置】中构建环境默认环境
是不适合Hugo的,详见参考7中默认环境预装SDK和命令行工具
我在找Hugo的Docker包/生产环境包,一下没找到,但是看到zeabur构建过程有相应的包,我就试着找他们是不是发布过
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
| Initializing builder ...
Cloning source code from git ...
╔══════════════════════════════ Build Plan ═════════════════════════════╗
║ provider │ static ║
║───────────────────────────────────────────────────────────────────────║
║ framework │ hugo ║
╚═══════════════════════════════════════════════════════════════════════╝
#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 1.43kB done
#1 DONE 0.0s
#2 [internal] load metadata for dockerhub.zeabur.cloud/hugomods/hugo:exts
#2 DONE 3.1s
#4 resolve dockerhub.zeabur.cloud/hugomods/hugo:exts@sha256:6a9c2d89bd10357035ada8135b93bc0564f17f4f65e62a8d5d7253804e90f2bd 0.0s done
#3 [internal] load .dockerignore
#3 transferring context: 2B done
#3 DONE 0.0s
#4 [builder 1/4] FROM dockerhub.zeabur.cloud/hugomods/hugo:exts@sha256:6a9c2d89bd10357035ada8135b93bc0564f17f4f65e62a8d5d7253804e90f2bd
#5 transferring context: 2.95MB 0.1s done
#5 DONE 0.1s
#4 ...
#5 [internal] load build context
#4 [builder 1/4] FROM dockerhub.zeabur.cloud/hugomods/hugo:exts@sha256:6a9c2d89bd10357035ada8135b93bc0564f17f4f65e62a8d5d7253804e90f2bd
#4 DONE 0.3s
#4 [builder 1/4] FROM dockerhub.zeabur.cloud/hugomods/hugo:exts@sha256:6a9c2d89bd10357035ada8135b93bc0564f17f4f65e62a8d5d7253804e90f2bd
|
未完待续…可通过【关于】栏目里面的邮件催更呦~
参考