Admin stack: Authelia SSO, portal at admin.carr.pub, gated grafana.carr.pub
This commit is contained in:
66
manifests/admin/portal.yaml
Normal file
66
manifests/admin/portal.yaml
Normal file
@@ -0,0 +1,66 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: portal-index
|
||||
namespace: admin
|
||||
data:
|
||||
index.html: |
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head><meta charset="utf-8"><title>planck admin</title>
|
||||
<style>
|
||||
body { font-family: system-ui, sans-serif; background: #111; color: #eee;
|
||||
display: grid; place-items: center; min-height: 100vh; margin: 0; }
|
||||
.card { text-align: center; }
|
||||
h1 { font-size: 2.5rem; margin: 0 0 1.5rem; }
|
||||
a { display: block; margin: 0.6rem auto; padding: 0.8rem 1.5rem;
|
||||
background: #1e1e2e; border: 1px solid #333; border-radius: 10px;
|
||||
color: #8be9fd; text-decoration: none; font-size: 1.1rem; width: 260px; }
|
||||
a:hover { background: #2a2a3e; }
|
||||
p { color: #888; }
|
||||
</style>
|
||||
</head>
|
||||
<body><div class="card">
|
||||
<h1>planck</h1>
|
||||
<a href="https://grafana.carr.pub">Grafana</a>
|
||||
<a href="https://auth.carr.pub">Account & 2FA settings</a>
|
||||
<p>20 nodes · k3s · carr.pub</p>
|
||||
</div></body>
|
||||
</html>
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: portal
|
||||
namespace: admin
|
||||
spec:
|
||||
replicas: 2
|
||||
selector:
|
||||
matchLabels: {app: portal}
|
||||
template:
|
||||
metadata:
|
||||
labels: {app: portal}
|
||||
spec:
|
||||
containers:
|
||||
- name: web
|
||||
image: nginx:1.29-alpine
|
||||
ports: [{containerPort: 80}]
|
||||
resources:
|
||||
requests: {cpu: 10m, memory: 16Mi}
|
||||
limits: {memory: 64Mi}
|
||||
volumeMounts:
|
||||
- {name: html, mountPath: /usr/share/nginx/html}
|
||||
volumes:
|
||||
- name: html
|
||||
configMap: {name: portal-index}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: portal
|
||||
namespace: admin
|
||||
spec:
|
||||
selector: {app: portal}
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 80
|
||||
Reference in New Issue
Block a user