Sunday, 22 March 2020

Bagaimana memasang pelayan git gogs di Kubernetes tanpa helm

Yang terbaik ialah guna helm tapi kalau ada kluster Kubernetes tu ada ruang udara dengan Internet, helm tidak boleh digunakan. Oleh itu kena pasang sendiri seperti yang berikut

1. pull gogs/gogs image dari https://hub.docker.com
docker pull gogs/gogs:0.11.91

2. tag dan push ke Harbor
docker tag gogs/gogs:0.11.91  harbor.kubix.my/library/gogs:0.11.91

docker push harbor.kubix.my/library/gogs:0.11.91

3. Bina persistance volume. Saya menggunakan pvc yang berikut
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: gogs-pvc
  annotations:
    volume.beta.kubernetes.io/storage-class: thin-disk
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 50Gi


4. Pasangkan gogs dengan menggunakan manifes yang berikut
---
#ClusterIP Service to expose Trust app
apiVersion: v1
kind: Service
metadata:
  name: sv-gogs
spec:
  type: ClusterIP
  ports:
  - port: 80 
    targetPort: 3000
  selector:
    app: gogs
---
#Trust App deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: gogs
spec:
  replicas: 1
  selector:
    matchLabels:
      app: gogs
  template:
    metadata:
      labels:
        app: gogs
    spec:
      containers:
      - name: gogs
        image: harbor.prod.kubix.tm.com.my/library/gogs:0.11.91
        ports:
        - containerPort: 3000 
        volumeMounts:
        - name: gogs-volume
          mountPath: /data
      volumes:
      - name: gogs-volume
        persistentVolumeClaim:
          claimName: gogs-pvc

5. Untuk memaparkan service ini keluar, saya menggunakan ingress
#apiVersion: networking.k8s.io/v1beta1
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: gogs
spec:
  tls:
  - hosts: 
    - gogs.kubix.tm
    secretName: poc-kubix-tls
  rules:
  - host: gogs.kubix.tm
    http:
      paths:
      - backend:
          serviceName: sv-gogs
          servicePort: 80



6. Kemudian anda boleh terus kepada setting awal gogs:-


7. Boleh cuba guna seperti pelayan-pelayan git yang lain :)

No comments:

Post a Comment

Memantau Linux dengan atop

Katakan kita nak tau aplikasi apa yang guna CPU tinggi pada 3 pagi tadi.Cara paling mudah ialah dengan menggunakan atop. atop macam top tapi...