Compare commits
16 Commits
auto-updat
...
auto-updat
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
02a263ff5d | ||
|
|
5d9fe8f832 | ||
|
|
af4a4c9216 | ||
|
|
43bd0b6ac3 | ||
|
|
c4a40fad9f | ||
|
|
e1d6a09f6f | ||
| e37c365630 | |||
|
|
6cf7a68ad7 | ||
|
|
b82407f31f | ||
| 117583e660 | |||
| 70d31aae17 | |||
| 9066b3f624 | |||
|
|
633c4eec94 | ||
|
|
89df3d985e | ||
|
|
8ef1242243 | ||
|
|
f07f0ea7c5 |
@@ -10,16 +10,22 @@ spec:
|
|||||||
template:
|
template:
|
||||||
type: Opaque
|
type: Opaque
|
||||||
data:
|
data:
|
||||||
|
METRICS_USER: admin
|
||||||
|
FRONT_END_DOMAIN: rw.hexor.cy
|
||||||
|
SUB_PUBLIC_DOMAIN: sub.hexor.cy
|
||||||
|
REDIS_HOST: remnawave-redis
|
||||||
|
REDIS_PORT: "6379"
|
||||||
|
|
||||||
DATABASE_URL: |-
|
DATABASE_URL: |-
|
||||||
postgresql://remnawave:{{ .pg_pass }}@psql.psql.svc:5432/remnawave
|
postgresql://remnawave:{{ .pg_pass }}@psql.psql.svc:5432/remnawave
|
||||||
# JWT_AUTH_SECRET: |-
|
JWT_AUTH_SECRET: |-
|
||||||
# {{ .jwt_auth_secret }}
|
{{ .jwt_auth_secret }}
|
||||||
# JWT_API_TOKENS_SECRET: |-
|
JWT_API_TOKENS_SECRET: |-
|
||||||
# {{ .jwt_api_tokens_secret }}
|
{{ .jwt_api_tokens_secret }}
|
||||||
# METRICS_USER: |-
|
METRICS_PASS: |-
|
||||||
# {{ .metrics_user }}
|
{{ .metrics_pass }}
|
||||||
# METRICS_PASS: |-
|
WEBHOOK_SECRET_HEADER: |-
|
||||||
# {{ .metrics_pass }}
|
{{ .webhook_secret }}
|
||||||
|
|
||||||
data:
|
data:
|
||||||
- secretKey: pg_pass
|
- secretKey: pg_pass
|
||||||
@@ -30,35 +36,35 @@ spec:
|
|||||||
remoteRef:
|
remoteRef:
|
||||||
key: 2a9deb39-ef22-433e-a1be-df1555625e22
|
key: 2a9deb39-ef22-433e-a1be-df1555625e22
|
||||||
property: fields[10].value
|
property: fields[10].value
|
||||||
# - secretKey: jwt_auth_secret
|
- secretKey: jwt_auth_secret
|
||||||
# sourceRef:
|
sourceRef:
|
||||||
# storeRef:
|
storeRef:
|
||||||
# name: vaultwarden-login
|
name: vaultwarden-login
|
||||||
# kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
# remoteRef:
|
remoteRef:
|
||||||
# key: 35ec5880-2576-401b-a89a-3c9d56b9c1de
|
key: 0d090436-5e82-453a-914c-19cec2abded1
|
||||||
# property: login.password
|
property: fields[0].value
|
||||||
# - secretKey: jwt_api_tokens_secret
|
- secretKey: jwt_api_tokens_secret
|
||||||
# sourceRef:
|
sourceRef:
|
||||||
# storeRef:
|
storeRef:
|
||||||
# name: vaultwarden-login
|
name: vaultwarden-login
|
||||||
# kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
# remoteRef:
|
remoteRef:
|
||||||
# key: 35ec5880-2576-401b-a89a-3c9d56b9c1de
|
key: 0d090436-5e82-453a-914c-19cec2abded1
|
||||||
# property: login.password
|
property: fields[1].value
|
||||||
# - secretKey: metrics_user
|
- secretKey: metrics_pass
|
||||||
# sourceRef:
|
sourceRef:
|
||||||
# storeRef:
|
storeRef:
|
||||||
# name: vaultwarden-login
|
name: vaultwarden-login
|
||||||
# kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
# remoteRef:
|
remoteRef:
|
||||||
# key: 35ec5880-2576-401b-a89a-3c9d56b9c1de
|
key: 0d090436-5e82-453a-914c-19cec2abded1
|
||||||
# property: login.username
|
property: fields[2].value
|
||||||
# - secretKey: metrics_pass
|
- secretKey: webhook_secret
|
||||||
# sourceRef:
|
sourceRef:
|
||||||
# storeRef:
|
storeRef:
|
||||||
# name: vaultwarden-login
|
name: vaultwarden-login
|
||||||
# kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
# remoteRef:
|
remoteRef:
|
||||||
# key: 35ec5880-2576-401b-a89a-3c9d56b9c1de
|
key: 0d090436-5e82-453a-914c-19cec2abded1
|
||||||
# property: login.password
|
property: fields[3].value
|
||||||
|
|||||||
@@ -2,8 +2,11 @@ apiVersion: kustomize.config.k8s.io/v1beta1
|
|||||||
kind: Kustomization
|
kind: Kustomization
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
- ./app.yaml
|
|
||||||
- ./external-secrets.yaml
|
- ./external-secrets.yaml
|
||||||
- ./deployment.yaml
|
- ./deployment.yaml
|
||||||
- ./redis-deployment.yaml
|
- ./redis-deployment.yaml
|
||||||
|
- ./subscription-page-configmap.yaml
|
||||||
|
- ./subscription-page-deployment.yaml
|
||||||
- ./servicemonitor.yaml
|
- ./servicemonitor.yaml
|
||||||
|
- ./user-ui-ingress.yaml
|
||||||
|
- ./panel-ingress.yaml
|
||||||
|
|||||||
37
k8s/apps/remnawave/panel-ingress.yaml
Normal file
37
k8s/apps/remnawave/panel-ingress.yaml
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: panel-ui
|
||||||
|
annotations:
|
||||||
|
ingressClassName: traefik
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt
|
||||||
|
traefik.ingress.kubernetes.io/router.middlewares: kube-system-https-redirect@kubernetescrd
|
||||||
|
acme.cert-manager.io/http01-edit-in-place: "true"
|
||||||
|
spec:
|
||||||
|
rules:
|
||||||
|
- host: rw.hexor.cy
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: remnawave
|
||||||
|
port:
|
||||||
|
number: 3000
|
||||||
|
- host: rw.hexor.ru
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: remnawave
|
||||||
|
port:
|
||||||
|
number: 3000
|
||||||
|
tls:
|
||||||
|
- secretName: remnawave-panel-tls
|
||||||
|
hosts:
|
||||||
|
- rw.hexor.cy
|
||||||
|
- rw.hexor.ru
|
||||||
27
k8s/apps/remnawave/subscription-page-configmap.yaml
Normal file
27
k8s/apps/remnawave/subscription-page-configmap.yaml
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: remnawave-subscription-page-config
|
||||||
|
labels:
|
||||||
|
app: remnawave-subscription-page
|
||||||
|
data:
|
||||||
|
APP_PORT: "3010"
|
||||||
|
REMNAWAVE_PANEL_URL: "https://rw.hexor.cy"
|
||||||
|
META_TITLE: "RemnaWave Subscription"
|
||||||
|
META_DESCRIPTION: "Your VPN subscription portal"
|
||||||
|
META_KEYWORDS: "vpn,subscription,remnawave"
|
||||||
|
META_AUTHOR: "RemnaWave"
|
||||||
|
ENABLE_ANALYTICS: "false"
|
||||||
|
ANALYTICS_MEASUREMENT_ID: ""
|
||||||
|
CUSTOM_SUB_PREFIX: ""
|
||||||
|
THEME: "dark"
|
||||||
|
CUSTOM_LOGO_URL: ""
|
||||||
|
SHOW_SUBSCRIPTION_INFO: "true"
|
||||||
|
SHOW_CONNECTION_INFO: "true"
|
||||||
|
SHOW_QR_CODE: "true"
|
||||||
|
QR_CODE_SIZE: "256"
|
||||||
|
REFRESH_INTERVAL: "30000"
|
||||||
|
SUBSCRIPTION_TEXT_COLOR: "#ffffff"
|
||||||
|
BACKGROUND_COLOR: "#1a1a1a"
|
||||||
|
ACCENT_COLOR: "#007bff"
|
||||||
52
k8s/apps/remnawave/subscription-page-deployment.yaml
Normal file
52
k8s/apps/remnawave/subscription-page-deployment.yaml
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
---
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: remnawave-subscription-page
|
||||||
|
labels:
|
||||||
|
app: remnawave-subscription-page
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: remnawave-subscription-page
|
||||||
|
replicas: 1
|
||||||
|
strategy:
|
||||||
|
type: RollingUpdate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: remnawave-subscription-page
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: subscription-page
|
||||||
|
image: 'remnawave/subscription-page:latest'
|
||||||
|
imagePullPolicy: Always
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: remnawave-subscription-page-config
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 3010
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
memory: "64Mi"
|
||||||
|
cpu: "50m"
|
||||||
|
limits:
|
||||||
|
memory: "256Mi"
|
||||||
|
cpu: "200m"
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: remnawave-subscription-page
|
||||||
|
labels:
|
||||||
|
app: remnawave-subscription-page
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: remnawave-subscription-page
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
protocol: TCP
|
||||||
|
port: 3010
|
||||||
|
targetPort: 3010
|
||||||
37
k8s/apps/remnawave/user-ui-ingress.yaml
Normal file
37
k8s/apps/remnawave/user-ui-ingress.yaml
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: user-ui
|
||||||
|
annotations:
|
||||||
|
ingressClassName: traefik
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt
|
||||||
|
traefik.ingress.kubernetes.io/router.middlewares: kube-system-https-redirect@kubernetescrd
|
||||||
|
acme.cert-manager.io/http01-edit-in-place: "true"
|
||||||
|
spec:
|
||||||
|
rules:
|
||||||
|
- host: sub.hexor.cy
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: remnawave-subscription-page
|
||||||
|
port:
|
||||||
|
number: 3010
|
||||||
|
- host: sub.hexor.ru
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: remnawave-subscription-page
|
||||||
|
port:
|
||||||
|
number: 3010
|
||||||
|
tls:
|
||||||
|
- secretName: remnawave-user-ui-tls
|
||||||
|
hosts:
|
||||||
|
- sub.hexor.cy
|
||||||
|
- sub.hexor.ru
|
||||||
@@ -47,6 +47,7 @@ server:
|
|||||||
- minecraft.hexor.cy # Minecraft UI and server
|
- minecraft.hexor.cy # Minecraft UI and server
|
||||||
- pass.hexor.cy # k8s-secret for openai
|
- pass.hexor.cy # k8s-secret for openai
|
||||||
- ps.hexor.cy # pasarguard UI
|
- ps.hexor.cy # pasarguard UI
|
||||||
|
# - rw.hexor.cy # RemnaWave UI
|
||||||
tls:
|
tls:
|
||||||
- secretName: idm-tls
|
- secretName: idm-tls
|
||||||
hosts:
|
hosts:
|
||||||
|
|||||||
Reference in New Issue
Block a user