diff --git a/apply.sh b/apply.sh index 7af19a5..c47b558 100755 --- a/apply.sh +++ b/apply.sh @@ -145,7 +145,7 @@ k apply -f minio-pv.yaml -n db # create secrets for longhorn -kubectl -n media create secret generic minio --from-literal=AWS_ENDPOINTS=https://minio.home.toozhao.com --from-literal=AWS_ACCESS_KEY_ID='' --from-literal=AWS_SECRET_ACCESS_KEY='' +kubectl -n media create secret generic minio --from-literal=AWS_ENDPOINTS=https://minio.junv.me --from-literal=AWS_ACCESS_KEY_ID='' --from-literal=AWS_SECRET_ACCESS_KEY='' # fill s3 bucket name for longhorn @@ -159,3 +159,7 @@ helm upgrade --install minio -n db -f minio-values.yaml bitnami/minio --set acce # copy secret to another namespace kubectl get secret minio --namespace=db -o yaml | sed 's/namespace: db/namespace: longhorn/g' | kubectl create -f - + +# namecheap ddns + + kubectl -n home-apps create secret generic namecheap-password --from-literal=password=xxxx diff --git a/backup-cronjobs.yaml b/backup-cronjobs.yaml index 1742d51..4366fbf 100644 --- a/backup-cronjobs.yaml +++ b/backup-cronjobs.yaml @@ -73,9 +73,9 @@ spec: - name: DB_USER value: postgres - name: DB_HOST - value: home.toozhao.com + value: new-postgres-postgresql.db.svc.cluster.local command: ["/bin/sh"] - args: ["-c", " =$DB_PASSWORD pg_dumpall -c -h $DB_HOST -p 32222 -U $DB_USER| gzip > /backups/postgres/dump-$(date +%Y-%m-%d_%H-%M-%S_%Z).tar.gz"] + args: ["-c", " =$DB_PASSWORD pg_dumpall -c -h $DB_HOST -p 5432 -U $DB_USER| gzip > /backups/postgres/dump-$(date +%Y-%m-%d_%H-%M-%S_%Z).tar.gz"] volumeMounts: - mountPath: /backups/postgres subPath: postgres diff --git a/ddns.yaml b/ddns.yaml index cb21107..2369337 100644 --- a/ddns.yaml +++ b/ddns.yaml @@ -101,3 +101,42 @@ spec: limits: cpu: 40m memory: 128Mi + +--- + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: ddns-junv-me +spec: + selector: + matchLabels: + app: ddns-junv-me + replicas: 1 + template: + metadata: + labels: + app: ddns-junv-me + spec: + containers: + - name: ddns-junv-me + image: joshuamorris3/namecheap-ddns-update + env: + - name: NC_DDNS_PASS + valueFrom: + secretKeyRef: + name: namecheap-password + key: password + - name: DOMAIN + value: junv.me + - name: SUBDOMAINS + value: "@,*" + - name: INTERVAL + value: "60s" + resources: + requests: + cpu: 20m + memory: 64Mi + limits: + cpu: 40m + memory: 128Mi diff --git a/longhorn-values.yaml b/longhorn-values.yaml index 6a7c068..d50515d 100644 --- a/longhorn-values.yaml +++ b/longhorn-values.yaml @@ -127,17 +127,17 @@ ingress: kubernetes.io/ingress.class: "nginx" kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" path: / # hosts: # - chart-example.local # tls: # - hosts: - # - longhorn.home.toozhao.com + # - longhorn.junv.me # secretName: superset-tls # rules: - # - host: longhorn.home.toozhao.com + # - host: longhorn.junv.me # http: # paths: # - backend: @@ -148,7 +148,7 @@ ingress: # path: / # pathType: Prefix - host: longhorn.home.toozhao.com + host: longhorn.junv.me ## Set this to true in order to enable TLS on the ingress record ## A side effect of this will be that the backend service will be connected at port 443 diff --git a/media.yaml b/media.yaml index fadfd03..2dde491 100644 --- a/media.yaml +++ b/media.yaml @@ -79,15 +79,15 @@ metadata: kubernetes.io/ingress.class: "nginx" kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" spec: tls: - hosts: - - sonarr.home.toozhao.com + - sonarr.junv.me secretName: sonarr-tls rules: - - host: sonarr.home.toozhao.com + - host: sonarr.junv.me http: paths: - path: / @@ -158,10 +158,10 @@ metadata: spec: tls: - hosts: - - plex.home.toozhao.com + - plex.junv.me secretName: plex-tls rules: - - host: plex.home.toozhao.com + - host: plex.junv.me http: paths: - pathType: Prefix @@ -343,10 +343,10 @@ metadata: spec: tls: - hosts: - - dl.home.toozhao.com + - dl.junv.me secretName: youtube-dl-tls rules: - - host: dl.home.toozhao.com + - host: dl.junv.me http: paths: - path: / @@ -369,10 +369,10 @@ metadata: spec: tls: - hosts: - - download.home.toozhao.com + - download.junv.me secretName: qbit-tls rules: - - host: download.home.toozhao.com + - host: download.junv.me http: paths: - path: / @@ -384,7 +384,7 @@ spec: number: 80 --- -# Refused to send form data to 'http://cloud.home.toozhao.com/' because it violates the following Content Security Policy directive: "form-action 'self'". +# Refused to send form data to 'http://cloud.junv.me/' because it violates the following Content Security Policy directive: "form-action 'self'". # It is not regression, I think, CSP directive form-action 'self' added intentionally. I suppose your problem is that nextcloud doesn't know that it was accessed through https. Maybe traefik don't add X-Forwarded-Proto header. You can try to add 'overwriteprotocol' => 'https' to your config and see if problem persists. apiVersion: apps/v1 @@ -518,10 +518,10 @@ metadata: spec: tls: - hosts: - - cloud.home.toozhao.com + - cloud.junv.me secretName: nextcloud-tls rules: - - host: cloud.home.toozhao.com + - host: cloud.junv.me http: paths: - path: / @@ -614,15 +614,15 @@ metadata: kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" nginx.ingress.kubernetes.io/proxy-body-size: 1024m - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" spec: tls: - hosts: - - files.home.toozhao.com + - files.junv.me secretName: files-tls rules: - - host: files.home.toozhao.com + - host: files.junv.me http: paths: - path: / @@ -701,15 +701,15 @@ metadata: kubernetes.io/ingress.class: "nginx" kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" spec: tls: - hosts: - - books.home.toozhao.com + - books.junv.me secretName: books-tls rules: - - host: books.home.toozhao.com + - host: books.junv.me http: paths: - path: / diff --git a/minio-values.yaml b/minio-values.yaml index 503deb5..d75ae5c 100644 --- a/minio-values.yaml +++ b/minio-values.yaml @@ -18,9 +18,9 @@ ingress: kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" nginx.ingress.kubernetes.io/proxy-body-size: 102400m - # nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - # nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + # nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + # nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" path: / - hostname: minio.home.toozhao.com + hostname: minio.junv.me tls: true certManager: true diff --git a/n8n.yaml b/n8n.yaml deleted file mode 100644 index 062dad7..0000000 --- a/n8n.yaml +++ /dev/null @@ -1,91 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: n8n - labels: - app: n8n -spec: - replicas: 1 - selector: - matchLabels: - app: n8n - template: - metadata: - labels: - app: n8n - name: n8n - spec: - containers: - - name: n8n - image: n8nio/n8n - imagePullPolicy: Always - ports: - - containerPort: 5678 - name: web - protocol: TCP - env: - - name: TZ - value: "Australia/Melbourne" - - name: N8N_PORT - value: "5678" - volumeMounts: - - name: data - mountPath: "/home/node/.n8n" - resources: - requests: - cpu: 100m - memory: 200Mi - limits: - cpu: 200m - memory: 500Mi - volumes: - - name: data - persistentVolumeClaim: - claimName: n8n - ---- - -apiVersion: v1 -kind: Service -metadata: - name: n8n - labels: - name: n8n -spec: - type: ClusterIP - selector: - app: n8n - ports: - - name: n8n - targetPort: web - port: 80 - protocol: TCP - ---- - -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: n8n-ingress - annotations: - kubernetes.io/ingress.class: "nginx" - kubernetes.io/tls-acme: "true" - cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" -spec: - tls: - - hosts: - - n8n.home.toozhao.com - secretName: n8n-tls - rules: - - host: n8n.home.toozhao.com - http: - paths: - - backend: - service: - name: n8n - port: - number: 80 - path: / - pathType: Prefix diff --git a/nas.yaml b/nas.yaml index f42224e..929b483 100644 --- a/nas.yaml +++ b/nas.yaml @@ -42,15 +42,15 @@ metadata: kubernetes.io/ingress.class: "nginx" kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" spec: tls: - hosts: - - nas.home.toozhao.com + - nas.junv.me secretName: nas-tls rules: - - host: nas.home.toozhao.com + - host: nas.junv.me http: paths: - backend: diff --git a/oauth2-proxy-config.yaml b/oauth2-proxy-config.yaml index 819ef0c..c68016f 100644 --- a/oauth2-proxy-config.yaml +++ b/oauth2-proxy-config.yaml @@ -5,8 +5,8 @@ image: tag: v6.1.1 extraArgs: - whitelist-domain: .home.toozhao.com - cookie-domain: .home.toozhao.com + whitelist-domain: .junv.me + cookie-domain: .junv.me provider: github silence-ping-logging: true @@ -19,7 +19,7 @@ ingress: enabled: true path: / hosts: - - id.home.toozhao.com + - id.junv.me annotations: kubernetes.io/ingress.class: nginx cert-manager.io/cluster-issuer: letsencrypt-prod @@ -27,7 +27,7 @@ ingress: tls: - secretName: oauth2-proxy hosts: - - id.home.toozhao.com + - id.junv.me erviceAccount: enable: false diff --git a/pihole.yaml b/pihole.yaml index 2771793..e8485d7 100644 --- a/pihole.yaml +++ b/pihole.yaml @@ -55,7 +55,7 @@ spec: - name: DNS2 value: '8.8.8.8' - name: VIRTUAL_HOST - value: 'pihole.home.toozhao.com' + value: 'pihole.junv.me' volumeMounts: - name: configs mountPath: "/etc/pihole" @@ -126,15 +126,15 @@ metadata: kubernetes.io/ingress.class: "nginx" kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" spec: tls: - hosts: - - pihole.home.toozhao.com + - pihole.junv.me secretName: pihole-tls rules: - - host: pihole.home.toozhao.com + - host: pihole.junv.me http: paths: - backend: diff --git a/prometheus-ingress.yml b/prometheus-ingress.yml index 3ac87de..8e1675e 100644 --- a/prometheus-ingress.yml +++ b/prometheus-ingress.yml @@ -6,31 +6,31 @@ metadata: kubernetes.io/ingress.class: "nginx" kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" spec: tls: - hosts: - - grafana.home.toozhao.com - - prometheus.home.toozhao.com - - alert.home.toozhao.com + - grafana.junv.me + - prometheus.junv.me + - alert.junv.me secretName: prometheus-operator-tls rules: - - host: grafana.home.toozhao.com + - host: grafana.junv.me http: paths: - backend: serviceName: prometheus-grafana servicePort: 80 path: / - - host: prometheus.home.toozhao.com + - host: prometheus.junv.me http: paths: - backend: serviceName: prometheus-operated servicePort: 9090 path: / - - host: alert.home.toozhao.com + - host: alert.junv.me http: paths: - backend: @@ -51,10 +51,10 @@ metadata: spec: tls: - hosts: - - prometheus-api.home.toozhao.com + - prometheus-api.junv.me secretName: prometheus-api-operator-tls rules: - - host: prometheus-api.home.toozhao.com + - host: prometheus-api.junv.me http: paths: - backend: diff --git a/statping.yaml b/statping.yaml index 3de5666..b30b479 100644 --- a/statping.yaml +++ b/statping.yaml @@ -39,13 +39,16 @@ spec: - name: DB_CONN value: postgres - name: DB_HOST - value: home.toozhao.com + value: new-postgres-postgresql.db.svc.cluster.local - name: DB_PORT - value: "32222" + value: "5432" - name: DB_USER value: postgres - name: DB_PASS - value: <---> + valueFrom: + secretKeyRef: + name: new-postgres-postgresql + key: password - name: DB_DATABASE value: statping - name: NAME @@ -69,10 +72,10 @@ metadata: spec: tls: - hosts: - - status.home.toozhao.com + - status.junv.me secretName: statping-tls rules: - - host: status.home.toozhao.com + - host: status.junv.me http: paths: - backend: diff --git a/superset-values.yaml b/superset-values.yaml index 2bf2840..5fec352 100644 --- a/superset-values.yaml +++ b/superset-values.yaml @@ -52,17 +52,17 @@ ingress: kubernetes.io/ingress.class: "nginx" kubernetes.io/tls-acme: "true" cert-manager.io/cluster-issuer: "letsencrypt-prod" - nginx.ingress.kubernetes.io/auth-url: "https://id.home.toozhao.com/oauth2/auth" - nginx.ingress.kubernetes.io/auth-signin: "https://id.home.toozhao.com/oauth2/start?rd=https%3A%2F%2F$host$request_uri" + nginx.ingress.kubernetes.io/auth-url: "https://id.junv.me/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://id.junv.me/oauth2/start?rd=https%3A%2F%2F$host$request_uri" path: / hosts: - - superset.home.toozhao.com + - superset.junv.me tls: - hosts: - - superset.home.toozhao.com + - superset.junv.me secretName: superset-tls rules: - - host: superset.home.toozhao.com + - host: superset.junv.me http: paths: - backend: