基于Gitlab Runner的CI/CD搭建
409 字
2 分钟
基于Gitlab Runner的CI/CD搭建
前言
我已经搭建了很多七七八八的服务 应该是完全满足DevOps的需求了
但我还完全没有体验过整个流程呢
刚好我自己给Aqua的前端改了点代码 我决定搞一个自动部署
折腾开始
需求很简单,在我改完代码之后Push到我自己的Gitlab,然后自动Build镜像并推送到我的Harbor,然后Kubernete Deployment Rollout拉取新镜像
我不打算用Jenkins 一个是他的UI老丑 一个就是没必要 Gitlab对我已经很强大了
其实也是因为懒不想重新搭一个
一个是我后面去看了Jenkins的逻辑是在Agent上部署搭建环境然后构建 那就意味着
Nodejs要一个Agent Python要一个 Java要一个 当然你可以把所有环境塞在一台机器里 但那何必呢
Docker拉构建环境的镜像 构建后用后即焚 节省资源同时能保证环境的一致 同时也便于更新
Gitlab Runner的搭建
那首先肯定是要搭建Runner,直接在K8s部署肯定是最好的
首先先去Gitlab创建一个runner拿到token

然后连上Master
helm repo add gitlab https://charts.gitlab.iohelm install gitlab-runner \ --namespace=gitlab-runner \ --create-namespace \ --set gitlabUrl=https://gitlab.example.com \ --set runnerToken=xxx \ --set rbac.create=true \ --set rbac.clusterWideAccess=true \ gitlab/gitlab-runner我们让helm自己创建serviceAccount就好 不给自己埋坑(

没啥问题 接下来就是下一步
CI/CD配置
需求大概是:
- 我Push代码到我自己的Gitlab
- Gitlab Runner开始执行流水线,npm build出静态文件
- 构建Nginx镜像
- Push到Harbor
- K8s触发Rollout
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
基于Gitlab Runner的CI/CD搭建
https://cainongw.github.io/posts/gitlab-runners/ 相关文章 智能推荐
1
记一次filebrowser的搭建
Kubernetes 起因 我以为这个就是写个Deployment然后挂载NFS就得了 本来都不打算写blog的 结果后面发现折腾了我几个小时才好 还是有一点坑的 所以就写一下
2
开源WAF 雷池在K8s上的搭建
HomeLab 前言 换了条宽带,现在我拥有动态的公网IPV4地址了 我打算暴露一些服务出去以便我使用 例如Openlist RDP Gitlab 但是 我并不打算公开 我只打算自己使用 前面我们搭建了Authentik作为SSO单点登录,刚好雷池WAF支持通过单点登录鉴权来允许访问 这样我就可以实现把ESXi挂到公网 但是不登录都过不了防火墙
3
Certd的搭建与证书自动部署与通知
Kubernetes 前言 前段时间去办了商宽,可算是有公网IP了 CloudFlare Tunnel实在太慢了 然后我白嫖了免费的pp.ua域名托管到了CF 现在只需要定期给域名申请证书就好了
4
记一次Kubernetes完整集群的搭建
HomeLab 写在前面 太好了孩子们 这次基本全都是命令行操作 我不用截图了 以下几乎全是命令 几乎一张图片没有 如果你想做为参考的话请仔细阅读每一行 前言 昨天我在折腾Authentik认证服务的时候 一直在思考用什么反代服务 常见的可以用Nginx Proxy Manager,Caddy,Traefik 这里面我觉得比较好用的是Traefik,但是即使是Traefik
5
记一次局域网内.lan域名的证书自签名并挂载到Ingress
HomeLab 前言 在Authentik的折腾中由于我们没有https导致passkey无法使用 并且想使用passkey必须要可用的证书 Chrome提示什么不安全的连接即使有https也是无法使用的 所以我们需要给.lan域名签一个证书并信任他
随机文章 随机推荐