diff --git a/k8s/apps/mtproxy/app.yaml b/k8s/apps/mtproxy/app.yaml new file mode 100644 index 0000000..33b7452 --- /dev/null +++ b/k8s/apps/mtproxy/app.yaml @@ -0,0 +1,20 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: mtproxy + namespace: argocd +spec: + project: apps + destination: + namespace: mtproxy + server: https://kubernetes.default.svc + source: + repoURL: ssh://git@gt.hexor.cy:30022/ab/homelab.git + targetRevision: HEAD + path: k8s/apps/mtproxy + syncPolicy: + automated: + selfHeal: true + prune: true + syncOptions: + - CreateNamespace=true diff --git a/k8s/apps/mtproxy/deployment.yaml b/k8s/apps/mtproxy/deployment.yaml new file mode 100644 index 0000000..fc66fa3 --- /dev/null +++ b/k8s/apps/mtproxy/deployment.yaml @@ -0,0 +1,49 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: mtproxy + labels: + app: mtproxy +spec: + replicas: 1 + selector: + matchLabels: + app: mtproxy + template: + metadata: + labels: + app: mtproxy + spec: + affinity: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: xray-node-address + operator: Exists + containers: + - name: mtproxy + image: telegrammessenger/proxy:latest + imagePullPolicy: Always + ports: + - name: proxy + containerPort: 443 + protocol: TCP + env: + - name: SECRET + value: "00baadf00d15abad1deaa51sbaadcafe" + volumeMounts: + - name: data + mountPath: /data + resources: + requests: + memory: "128Mi" + cpu: "100m" + limits: + memory: "256Mi" + cpu: "500m" + volumes: + - name: data + persistentVolumeClaim: + claimName: mtproxy-data diff --git a/k8s/apps/mtproxy/kustomization.yaml b/k8s/apps/mtproxy/kustomization.yaml new file mode 100644 index 0000000..fd2270d --- /dev/null +++ b/k8s/apps/mtproxy/kustomization.yaml @@ -0,0 +1,8 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - ./app.yaml + - ./deployment.yaml + - ./service.yaml + - ./storage.yaml diff --git a/k8s/apps/mtproxy/service.yaml b/k8s/apps/mtproxy/service.yaml new file mode 100644 index 0000000..ec0a4bd --- /dev/null +++ b/k8s/apps/mtproxy/service.yaml @@ -0,0 +1,14 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: mtproxy +spec: + type: LoadBalancer + selector: + app: mtproxy + ports: + - name: proxy + port: 30443 + targetPort: 443 + protocol: TCP diff --git a/k8s/apps/mtproxy/storage.yaml b/k8s/apps/mtproxy/storage.yaml new file mode 100644 index 0000000..dceb98c --- /dev/null +++ b/k8s/apps/mtproxy/storage.yaml @@ -0,0 +1,12 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: mtproxy-data +spec: + accessModes: + - ReadWriteOnce + storageClassName: longhorn + resources: + requests: + storage: 1Gi