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