本文作者:丁辉
Helm部署Drone
介绍
Drone 是一个开源的持续集成和持续部署(CI/CD)平台,广泛用于自动化代码构建、测试和发布流程。
开始部署
添加 Drone Helm Chart 存储库
1
2helm repo add drone https://charts.drone.io
helm repo update创建命名空间
1
kubectl create namespace drone
部署 Postgres
1
kubectl apply -f https://gitee.com/offends/Kubernetes/raw/main/File/Yaml/drone-postgres.yaml
生成密钥
1
openssl rand -hex 16
生成 Secret
对接 Gitea 参数替换如下:
DRONE_GITEA_CLIENT_ID
DRONE_GITEA_CLIENT_SECRET
1
2
3
4
5
6
7
8kubectl create secret generic drone-secret \
--from-literal=DRONE_RPC_SECRET=填入密钥 \
--from-literal=DRONE_GITHUB_CLIENT_ID=填入Github-ID \
--from-literal=DRONE_GITHUB_CLIENT_SECRET=填入Github-SECRET \
--from-literal=DRONE_GIT_USERNAME=配置Github用户名 \
--from-literal=DRONE_GIT_PASSWORD=配置Github密码 \
--from-literal=DRONE_USER_CREATE=username:填入管理员用户名,admin:true \
-n drone参数解释
参数 描述 DRONE_RPC_SECRET=
将名为 DRONE_RPC_SECRET
的密钥添加到Secret中,用于Drone CI/CD工具的RPC通信和验证。DRONE_GITHUB_CLIENT_ID=
将GitHub OAuth应用程序的客户端ID添加到Secret中。 DRONE_GITHUB_CLIENT_SECRET=
将GitHub OAuth应用程序的客户端密钥添加到Secret中。 DRONE_GIT_USERNAME=
将GitHub用户名添加到Secret中,用于访问GitHub仓库。 DRONE_GIT_PASSWORD=
将GitHub密码添加到Secret中,用于访问GitHub仓库。 DRONE_USER_CREATE=username:
指定在Drone启动时创建的用户信息,包括用户名和角色(管理员)。 编写模版文件
对接 Gitea 参数替换如下:
DRONE_GITEA_SERVER
1
vi drone-values.yaml
内容如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24# 开启 ingress 对外访问
ingress:
enabled: true
className: "" # 指定 ingress 控制器, 不指定则需要集群内存在默认的 ingress 控制器
hosts:
- host: # 域名
paths:
- path: /
pathType: Prefix
tls:
- secretName: drone-tls
hosts:
- # 域名
env:
DRONE_GITHUB_SERVER: https://github.com #仓库地址
DRONE_SERVER_HOST: #域名
DRONE_SERVER_PROTO: https
DRONE_DATABASE_DRIVER: postgres
DRONE_DATABASE_DATASOURCE: postgres://postgres:postgres@drone-db:5432/drone?sslmode=disable
extraSecretNamesForEnvFrom:
- drone-secret
persistentVolume:
enabled: false其他参数
1
2# oauth会验证gitlab证书,如果验证不过,需要打开
DRONE_GITLAB_SKIP_VERIFY: true安装
1
helm install drone drone/drone -f drone-values.yaml -n drone
卸载
卸载 drone
1
helm uninstall drone -n drone
删除 secret
1
kubectl delete secret drone-secret -n drone
删除命名空间
1
kubectl delete namespace drone
I'm so cute. Please give me money.
- 本文链接: https://blog.offends.cn/Kubernetes/Helm/Helm部署Drone.html
- 版权声明: 本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。