0%

基于K3S搭建DevOps

K3s安装

参考 K3s安装

组件安装

组件 端口 说明
MySQL 3306(NodePort) Gitea、Harbor等组件的依赖,与PostgreSQL二选一即可。安装参考K3s安装MySQL
PostgreSQL 5432(NodePort) Gitea、Harbor等组件的依赖,与MySQL二选一即可。安装参考K3s安装PostgreSQL
Cert-Manager 证书管理服务,有公网域名推荐使用,内网部署可生成自签名证书
Harbor 443(Traefik) 私有镜像库,镜像缓存。安装参考K3s安装
Gitea (3000)NodePort,(22)NodePort 源代码仓库,ssh与宿主机ssh端口冲突,需要协调
Drone 8080(NodePort) 基于Docker的自动编译服务,与Gitea Runner二选一即可。
Gitea Runner 暂无 Gitea 自动编译服务,与Drone 二选一即可。
SonarQube 8000(NodePort) 静态代码审查。
Girret 暂无 代码Review工具

组件部署

MySQL

参考 K3s部署MySQL

1
2
3
4
5
6
7
8
9
10
11
# k3s使用 local-path 部署
kubectl apply -f https://gitee.com/Chemmy/kube-template/MySQL/mysql-pvc-local-path.yaml

# 部署mysql-config
kubectl apply -fhttps://gitee.com/Chemmy/kube-template/MySQL/mysql-config.yaml

# 部署deploy
kubectl apply -fhttps://gitee.com/Chemmy/kube-template/MySQL/mysql-deployment.yaml

# 部署service(NodePort 方式)
kubectl apply -fhttps://gitee.com/Chemmy/kube-template/MySQL/mysql-service.yaml

PostgresSQL

参考 K3s部署PostgreSQL

1
2
3
4
5
6
7
8
9
10
11
# k3s使用 local-path 部署
kubectl apply -f https://gitee.com/Chemmy/kube-template/PostgreSQL/postgres-pvc-local-path.yaml

# 部署config
kubectl apply -fhttps://gitee.com/Chemmy/kube-template/PostgreSQL/postgres-config.yaml

# 部署deploy
kubectl apply -fhttps://gitee.com/Chemmy/kube-template/PostgreSQL/postgres-deployment.yaml

# 部署service(NodePort 方式)
kubectl apply -fhttps://gitee.com/Chemmy/kube-template/PostgreSQL/postgres-service.yaml

cert-manager

参考K3s部署cert-manager(证书管理)

1

Harbor

参考K3s部署Harbor私有镜像仓库

1

Gitea

参考K3s部署Gitea

1

Drone

参考K3s部署Drone

1

SonarQube

参考K3s部署SonarQube

1

组件之间联动配置

参考

Gitea官方文档

Gitea README

Drone官方文档

Helm官方文档

Harbor官方文档

Traefik Proxy Documentation - Traefik

k3s 部署gitea+drone_golang k3s-CSDN博客

Harbor 结合 Traefik 的 HA 安装配置-腾讯云开发者社区-腾讯云 (tencent.com)

Traefik - Kubernetes 配置TCP/HTTP服务-腾讯云开发者社区-腾讯云 (tencent.com)

Drone CI使用docker插件构建和推送镜像 - wosperry - 博客园 (cnblogs.com)

在 Kubernetes 上部署 Drone 持续集成环境 | Hanggi - NGNL

Gitea 与 Drone 集成实践:完全基于 Docker 搭建的轻量级 CI/CD 系统 - Gitea - 博客园 (cnblogs.com)

Helm Chart Kubernetes安装SonarQube_helm安装sunaqube-CSDN博客