split internal & external

This commit is contained in:
2025-01-19 20:14:30 +01:00
parent e6b6208876
commit ce9c7c48e8
18 changed files with 161 additions and 78 deletions

11
external/proxy/kustomization.yaml vendored Normal file
View File

@@ -0,0 +1,11 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- proxy.yaml
- service.yaml
configMapGenerator:
- name: external-proxy-config
files:
- nginx.conf

38
external/proxy/nginx.conf vendored Normal file
View File

@@ -0,0 +1,38 @@
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
# Basic config
include /etc/nginx/mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# We define two upstreams: external and internal
upstream external_ingress {
server nginx-external.ingress-nginx.svc.cluster.local:80;
}
# Server block for HTTP (port 80)
server {
listen 80 default_server;
server_name _;
}
server {
listen 80;
server_name ~^(?<subdomain>.+)\.mrcynic\.site$;
location / {
proxy_pass http://external_ingress;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
}

29
external/proxy/proxy.yaml vendored Normal file
View File

@@ -0,0 +1,29 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: external-proxy
annotations:
argocd.argoproj.io/sync-wave: "100"
spec:
replicas: 1
selector:
matchLabels:
app: external-proxy
template:
metadata:
labels:
app: external-proxy
spec:
containers:
- name: nginx
image: nginx:stable-alpine
volumeMounts:
- name: config
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
ports:
- containerPort: 80
volumes:
- name: config
configMap:
name: proxy-config

14
external/proxy/service.yaml vendored Normal file
View File

@@ -0,0 +1,14 @@
---
apiVersion: v1
kind: Service
metadata:
name: external-proxy-service
spec:
type: LoadBalancer
selector:
app: external-proxy
ports:
- name: http
port: 80
targetPort: 80
nodePort: 30080