kubernetes部署gitlab
apiVersion: v1
kind: Namespace
metadata:
name: gitlab
labels:
app: gitlab
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: gitlab-data
namespace: gitlab
spec:
storageClassName: directpv-min-io
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: gitlab-log
namespace: gitlab
spec:
storageClassName: directpv-min-io
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 4Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: gitlab-conf
namespace: gitlab
spec:
storageClassName: directpv-min-io
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: gitlab
namespace: gitlab
labels:
app: gitlab
spec:
replicas: 1
selector:
matchLabels:
app: gitlab
template:
metadata:
labels:
app: gitlab
spec:
containers:
- name: gitlab
image: gitlab/gitlab-ce:15.11.8-ce.0
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
name: http
env:
- name: TZ
value: Asia/Shanghai
- name: GITLAB_HOST
value: gitlab.ialso.cn
- name: GITLAB_PORT
value: "80"
- name: GITLAB_ROOT_PASSWORD
value: admin123456
- name: GITLAB_ROOT_EMAIL
value: 2750955630@qq.com
volumeMounts:
- name: gitlab-data
mountPath: /var/opt/gitlab
- name: gitlab-log
mountPath: /var/log/gitlab
- name: gitlab-conf
mountPath: /etc/gitlab
securityContext:
privileged: true
allowPrivilegeEscalation: true
volumes:
- name: gitlab-data
persistentVolumeClaim:
claimName: gitlab-data
- name: gitlab-log
persistentVolumeClaim:
claimName: gitlab-log
- name: gitlab-conf
persistentVolumeClaim:
claimName: gitlab-conf
---
apiVersion: v1
kind: Service
metadata:
name: gitlab
namespace: gitlab
spec:
selector:
app: gitlab
ports:
- name: http
port: 80
targetPort: 80
type: ClusterIP
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: gitlab
namespace: gitlab
annotations:
kubernetes.io/ingress.class: "nginx"
spec:
rules:
- host: gitlab.ialso.cn
http:
paths:
- pathType: Prefix
path: /
backend:
service:
name: gitlab
port:
number: 80