Add external services while i migrate from nomad -> k8s
This commit is contained in:
parent
d2662ea421
commit
e100d2a826
6 changed files with 550 additions and 0 deletions
109
external-services/freshrss.yaml
Normal file
109
external-services/freshrss.yaml
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: freshrss
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 80
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: discovery.k8s.io/v1
|
||||||
|
kind: EndpointSlice
|
||||||
|
metadata:
|
||||||
|
name: freshrss
|
||||||
|
namespace: external-services
|
||||||
|
labels:
|
||||||
|
kubernetes.io/service-name: freshrss
|
||||||
|
addressType: IPv4
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
appProtocol: http
|
||||||
|
protocol: TCP
|
||||||
|
port: 21046
|
||||||
|
endpoints:
|
||||||
|
- addresses:
|
||||||
|
- "192.168.0.12"
|
||||||
|
conditions:
|
||||||
|
ready: true
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: freshrss-cert
|
||||||
|
namespace: istio-system
|
||||||
|
spec:
|
||||||
|
secretName: freshrss-cert
|
||||||
|
commonName: rss.minhas.io
|
||||||
|
dnsNames:
|
||||||
|
- rss.minhas.io
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-prod
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: Gateway
|
||||||
|
metadata:
|
||||||
|
name: freshrss-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
istio: ingressgateway
|
||||||
|
servers:
|
||||||
|
- port:
|
||||||
|
number: 443
|
||||||
|
name: https
|
||||||
|
protocol: HTTPS
|
||||||
|
tls:
|
||||||
|
mode: SIMPLE
|
||||||
|
credentialName: freshrss-cert
|
||||||
|
hosts:
|
||||||
|
- rss.minhas.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: ServiceEntry
|
||||||
|
metadata:
|
||||||
|
name: freshrss
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- rss.minhas.io
|
||||||
|
addresses:
|
||||||
|
- 0.0.0.0/0
|
||||||
|
ports:
|
||||||
|
- number: 21046
|
||||||
|
name: freshrss
|
||||||
|
protocol: HTTP
|
||||||
|
location: MESH_EXTERNAL
|
||||||
|
resolution: STATIC
|
||||||
|
endpoints:
|
||||||
|
- address: 192.168.0.12
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: VirtualService
|
||||||
|
metadata:
|
||||||
|
name: freshrss-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- rss.minhas.io
|
||||||
|
gateways:
|
||||||
|
- freshrss-gateway
|
||||||
|
http:
|
||||||
|
- match:
|
||||||
|
- uri:
|
||||||
|
prefix: /
|
||||||
|
route:
|
||||||
|
- destination:
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
host: freshrss
|
||||||
|
...
|
109
external-services/gitea.yaml
Normal file
109
external-services/gitea.yaml
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: git
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 80
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: discovery.k8s.io/v1
|
||||||
|
kind: EndpointSlice
|
||||||
|
metadata:
|
||||||
|
name: git
|
||||||
|
namespace: external-services
|
||||||
|
labels:
|
||||||
|
kubernetes.io/service-name: git
|
||||||
|
addressType: IPv4
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
appProtocol: http
|
||||||
|
protocol: TCP
|
||||||
|
port: 23922
|
||||||
|
endpoints:
|
||||||
|
- addresses:
|
||||||
|
- "192.168.0.12"
|
||||||
|
conditions:
|
||||||
|
ready: true
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: git-cert
|
||||||
|
namespace: istio-system
|
||||||
|
spec:
|
||||||
|
secretName: git-cert
|
||||||
|
commonName: git.minhas.io
|
||||||
|
dnsNames:
|
||||||
|
- git.minhas.io
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-prod
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: Gateway
|
||||||
|
metadata:
|
||||||
|
name: git-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
istio: ingressgateway
|
||||||
|
servers:
|
||||||
|
- port:
|
||||||
|
number: 443
|
||||||
|
name: https
|
||||||
|
protocol: HTTPS
|
||||||
|
tls:
|
||||||
|
mode: SIMPLE
|
||||||
|
credentialName: git-cert
|
||||||
|
hosts:
|
||||||
|
- git.minhas.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: ServiceEntry
|
||||||
|
metadata:
|
||||||
|
name: git
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- git.minhas.io
|
||||||
|
addresses:
|
||||||
|
- 0.0.0.0/0
|
||||||
|
ports:
|
||||||
|
- number: 23922
|
||||||
|
name: git
|
||||||
|
protocol: HTTP
|
||||||
|
location: MESH_EXTERNAL
|
||||||
|
resolution: STATIC
|
||||||
|
endpoints:
|
||||||
|
- address: 192.168.0.12
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: VirtualService
|
||||||
|
metadata:
|
||||||
|
name: git-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- git.minhas.io
|
||||||
|
gateways:
|
||||||
|
- git-gateway
|
||||||
|
http:
|
||||||
|
- match:
|
||||||
|
- uri:
|
||||||
|
prefix: /
|
||||||
|
route:
|
||||||
|
- destination:
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
host: git
|
||||||
|
...
|
109
external-services/kanban.yaml
Normal file
109
external-services/kanban.yaml
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: kanban
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 80
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: discovery.k8s.io/v1
|
||||||
|
kind: EndpointSlice
|
||||||
|
metadata:
|
||||||
|
name: kanban
|
||||||
|
namespace: external-services
|
||||||
|
labels:
|
||||||
|
kubernetes.io/service-name: kanban
|
||||||
|
addressType: IPv4
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
appProtocol: http
|
||||||
|
protocol: TCP
|
||||||
|
port: 3453
|
||||||
|
endpoints:
|
||||||
|
- addresses:
|
||||||
|
- "192.168.0.12"
|
||||||
|
conditions:
|
||||||
|
ready: true
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: kanban-cert
|
||||||
|
namespace: istio-system
|
||||||
|
spec:
|
||||||
|
secretName: kanban-cert
|
||||||
|
commonName: kanban.minhas.io
|
||||||
|
dnsNames:
|
||||||
|
- kanban.minhas.io
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-prod
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: Gateway
|
||||||
|
metadata:
|
||||||
|
name: kanban-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
istio: ingressgateway
|
||||||
|
servers:
|
||||||
|
- port:
|
||||||
|
number: 443
|
||||||
|
name: https
|
||||||
|
protocol: HTTPS
|
||||||
|
tls:
|
||||||
|
mode: SIMPLE
|
||||||
|
credentialName: kanban-cert
|
||||||
|
hosts:
|
||||||
|
- kanban.minhas.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: ServiceEntry
|
||||||
|
metadata:
|
||||||
|
name: kanban
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- kanban.minhas.io
|
||||||
|
addresses:
|
||||||
|
- 0.0.0.0/0
|
||||||
|
ports:
|
||||||
|
- number: 3453
|
||||||
|
name: kanban
|
||||||
|
protocol: HTTP
|
||||||
|
location: MESH_EXTERNAL
|
||||||
|
resolution: STATIC
|
||||||
|
endpoints:
|
||||||
|
- address: 192.168.0.12
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: VirtualService
|
||||||
|
metadata:
|
||||||
|
name: kanban-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- kanban.minhas.io
|
||||||
|
gateways:
|
||||||
|
- kanban-gateway
|
||||||
|
http:
|
||||||
|
- match:
|
||||||
|
- uri:
|
||||||
|
prefix: /
|
||||||
|
route:
|
||||||
|
- destination:
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
host: kanban
|
||||||
|
...
|
109
external-services/nextcloud.yaml
Normal file
109
external-services/nextcloud.yaml
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: nextcloud
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 80
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: discovery.k8s.io/v1
|
||||||
|
kind: EndpointSlice
|
||||||
|
metadata:
|
||||||
|
name: nextcloud
|
||||||
|
namespace: external-services
|
||||||
|
labels:
|
||||||
|
kubernetes.io/service-name: nextcloud
|
||||||
|
addressType: IPv4
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
appProtocol: http
|
||||||
|
protocol: TCP
|
||||||
|
port: 23006
|
||||||
|
endpoints:
|
||||||
|
- addresses:
|
||||||
|
- "192.168.0.12"
|
||||||
|
conditions:
|
||||||
|
ready: true
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: nextcloud-cert
|
||||||
|
namespace: istio-system
|
||||||
|
spec:
|
||||||
|
secretName: nextcloud-cert
|
||||||
|
commonName: nextcloud.minhas.io
|
||||||
|
dnsNames:
|
||||||
|
- nextcloud.minhas.io
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-prod
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: Gateway
|
||||||
|
metadata:
|
||||||
|
name: nextcloud-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
istio: ingressgateway
|
||||||
|
servers:
|
||||||
|
- port:
|
||||||
|
number: 443
|
||||||
|
name: https
|
||||||
|
protocol: HTTPS
|
||||||
|
tls:
|
||||||
|
mode: SIMPLE
|
||||||
|
credentialName: nextcloud-cert
|
||||||
|
hosts:
|
||||||
|
- nextcloud.minhas.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: ServiceEntry
|
||||||
|
metadata:
|
||||||
|
name: nextcloud
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- nextcloud.minhas.io
|
||||||
|
addresses:
|
||||||
|
- 0.0.0.0/0
|
||||||
|
ports:
|
||||||
|
- number: 23006
|
||||||
|
name: nextcloud
|
||||||
|
protocol: HTTP
|
||||||
|
location: MESH_EXTERNAL
|
||||||
|
resolution: STATIC
|
||||||
|
endpoints:
|
||||||
|
- address: 192.168.0.12
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: VirtualService
|
||||||
|
metadata:
|
||||||
|
name: nextcloud-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- nextcloud.minhas.io
|
||||||
|
gateways:
|
||||||
|
- nextcloud-gateway
|
||||||
|
http:
|
||||||
|
- match:
|
||||||
|
- uri:
|
||||||
|
prefix: /
|
||||||
|
route:
|
||||||
|
- destination:
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
host: nextcloud
|
||||||
|
...
|
5
external-services/ns.yaml
Normal file
5
external-services/ns.yaml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
kind: Namespace
|
||||||
|
apiVersion: v1
|
||||||
|
metadata:
|
||||||
|
name: external-services
|
109
external-services/sudoscientist-go-backend.yaml
Normal file
109
external-services/sudoscientist-go-backend.yaml
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: sudosci
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 80
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: discovery.k8s.io/v1
|
||||||
|
kind: EndpointSlice
|
||||||
|
metadata:
|
||||||
|
name: sudosci
|
||||||
|
namespace: external-services
|
||||||
|
labels:
|
||||||
|
kubernetes.io/service-name: sudosci
|
||||||
|
addressType: IPv4
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
appProtocol: http
|
||||||
|
protocol: TCP
|
||||||
|
port: 28824
|
||||||
|
endpoints:
|
||||||
|
- addresses:
|
||||||
|
- "192.168.0.12"
|
||||||
|
conditions:
|
||||||
|
ready: true
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: sudosci-cert
|
||||||
|
namespace: istio-system
|
||||||
|
spec:
|
||||||
|
secretName: sudosci-cert
|
||||||
|
commonName: api.sudoscientist.com
|
||||||
|
dnsNames:
|
||||||
|
- api.sudoscientist.com
|
||||||
|
issuerRef:
|
||||||
|
name: route53-issuer
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: Gateway
|
||||||
|
metadata:
|
||||||
|
name: sudosci-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
istio: ingressgateway
|
||||||
|
servers:
|
||||||
|
- port:
|
||||||
|
number: 443
|
||||||
|
name: https
|
||||||
|
protocol: HTTPS
|
||||||
|
tls:
|
||||||
|
mode: SIMPLE
|
||||||
|
credentialName: sudosci-cert
|
||||||
|
hosts:
|
||||||
|
- api.sudoscientist.com
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: ServiceEntry
|
||||||
|
metadata:
|
||||||
|
name: sudosci
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- api.sudoscientist.com
|
||||||
|
addresses:
|
||||||
|
- 0.0.0.0/0
|
||||||
|
ports:
|
||||||
|
- number: 28824
|
||||||
|
name: sudosci
|
||||||
|
protocol: HTTP
|
||||||
|
location: MESH_EXTERNAL
|
||||||
|
resolution: STATIC
|
||||||
|
endpoints:
|
||||||
|
- address: 192.168.0.12
|
||||||
|
...
|
||||||
|
---
|
||||||
|
apiVersion: networking.istio.io/v1beta1
|
||||||
|
kind: VirtualService
|
||||||
|
metadata:
|
||||||
|
name: sudosci-gateway
|
||||||
|
namespace: external-services
|
||||||
|
spec:
|
||||||
|
hosts:
|
||||||
|
- api.sudoscientist.com
|
||||||
|
gateways:
|
||||||
|
- sudosci-gateway
|
||||||
|
http:
|
||||||
|
- match:
|
||||||
|
- uri:
|
||||||
|
prefix: /
|
||||||
|
route:
|
||||||
|
- destination:
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
host: sudosci
|
||||||
|
...
|
Loading…
Reference in a new issue