简介
我还是很喜欢gitlab的,但是gitlab太重了,不适合自己一个人使用,所以gitea加drone是个人使用最好的方案,我是这么认为的
操作
首先你需要在gitea上创建一个应用好让drone去接入gitea
怎么创建应用就不说了,创建完成应用完成之后会获得
DRONE_GITEA_CLIENT_ID
DRONE_GITEA_CLIENT_SECRET
这两个参数
之后就是drone的事情了
重定向url就是drone的地址,注意后面一定要加上login
比如
https://drone.bboysoul.cn/login
之后就是看drone的yaml文件
apiVersion: v1
kind: Namespace
metadata:
name: drone
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: drone
namespace: drone
spec:
selector:
matchLabels:
app: drone
serviceName: drone
replicas: 1
template:
metadata:
labels:
app: drone
spec:
containers:
- name: drone
image: registry.bboysoul.cn/drone/drone:2.0.2
env:
- name: DRONE_GITEA_CLIENT_ID
value: "d4as6d57-7z6a-40ce-80e9-432eas6dc3f2"
- name: DRONE_GITEA_CLIENT_SECRET
value: "Uvio1mOouasssssepC7itAgiRfjLI8PIeOJBMarec2V9E="
- name: DRONE_GITEA_SERVER
value: "https://git.bboysoul.cn"
- name: DRONE_GIT_ALWAYS_AUTH
value: "true"
- name: DRONE_RPC_SECRET
value: "ff57e2700cdasd4a2fbeaffds7efe22da"
- name: DRONE_SERVER_HOST
value: "drone.bboysoul.cn"
- name: DRONE_SERVER_PROTO
value: "https"
ports:
- containerPort: 80
name: http
- containerPort: 443
name: https
volumeMounts:
- name: data
mountPath: /data
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 100Gi
storageClassName: "managed-nfs-storage"
---
apiVersion: v1
kind: Service
metadata:
name: drone
namespace: drone
spec:
type: LoadBalancer
selector:
app: drone
ports:
- port: 80
targetPort: 80
name: http
- port: 443
targetPort: 443
name: https
也就是一个ns 一个sts 一个service,关键就是sts上面的env参数
DRONE_GITEA_SERVER
这个是gitea的地址
DRONE_RPC_SECRET
这个是rpc secret 使用openssl rand -hex 16
随便创建一个
DRONE_SERVER_HOST
这个是drone的地址
DRONE_SERVER_PROTO
表示drone使用什么协议
之后apply上面的东西就好了
当你登陆访问drone的时候会自动跳转到gitea,然后登陆gitea就可以登陆drone了
欢迎关注我的博客www.bboy.app
Have Fun