skip to content
Liu Yang's Blog

DevOps/GitOps经验总结

/ 2 min read

Updated:
Table of Contents

我主要基于Coding平台,实际上这个类似Jenkins,但是相对简单,以Java前后端为例

在我的想法中,DevOps分为CI/CD,CI包括Git Repos和编译流程,CD包括制品库,服务器部署

CI

Git Repos

工作协同,通过监控Master分支,遇推送触发编译

编译测试流程

编写配置文件Jenkins和Maven,编译服务器拉取,编译,测试,项目成品打包推送到制品库

CD

制品库

存储项目部署文件和版本信息,推送后触发部署流程

服务器部署

后端封装成Jar后,直接编写脚本做服务运行即可 前端例如Vue,编译后建议通过DockerFile通过Nginx镜像产出前端镜像,再由Docker部署 后端也可做镜像,或者通过多机器部署的方式,设置负载均衡 Web中间件可以用Caddy,Nginx Proxy Manger简单设置一下 DNS用Cloudflare,Dnspod可分线路加速(比如指向不同服务器,配置端口转发) TLS证书中间件可自动化签发,CDN可配合DNSPOD或Cloudflare全局使用 数据库可分服务器放置,组内网,或者直接Docker镜像运行 若一套流程走完,所有配置,可用Docker-Compose等

自运营

自运营平台

Git工作流可用Gitea,持续集成和部署可用drone.io,Jenkins也可

无服务器方案

可用Serverless(Vercel、netlify)方案也可,Github Actions方案也可