add plausible
This commit is contained in:
22
deploy/plausible/clickhouse-config.yaml
Normal file
22
deploy/plausible/clickhouse-config.yaml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: clickhouse-config
|
||||||
|
data:
|
||||||
|
clickhouse-config.xml: |
|
||||||
|
<clickhouse>
|
||||||
|
<logger>
|
||||||
|
<level>warning</level>
|
||||||
|
<console>true</console>
|
||||||
|
</logger>
|
||||||
|
<query_thread_log remove="remove"/>
|
||||||
|
<query_log remove="remove"/>
|
||||||
|
<text_log remove="remove"/>
|
||||||
|
<trace_log remove="remove"/>
|
||||||
|
<metric_log remove="remove"/>
|
||||||
|
<asynchronous_metric_log remove="remove"/>
|
||||||
|
|
||||||
|
<!-- Update: Required for newer versions of Clickhouse -->
|
||||||
|
<session_log remove="remove"/>
|
||||||
|
<part_log remove="remove"/>
|
||||||
|
</clickhouse>
|
||||||
41
deploy/plausible/clickhouse-deploy.yaml
Normal file
41
deploy/plausible/clickhouse-deploy.yaml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: clickhouse
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: clickhouse
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: clickhouse
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: clickhouse
|
||||||
|
image: clickhouse/clickhouse-server:22.6-alpine
|
||||||
|
# You may expose ports if needed (for example, HTTP on 8123)
|
||||||
|
ports:
|
||||||
|
- containerPort: 8123
|
||||||
|
volumeMounts:
|
||||||
|
- name: event-data
|
||||||
|
mountPath: /var/lib/clickhouse
|
||||||
|
- name: clickhouse-config
|
||||||
|
mountPath: /etc/clickhouse-server/config.d/logging.xml
|
||||||
|
subPath: clickhouse-config.xml
|
||||||
|
readOnly: true
|
||||||
|
- name: clickhouse-user-config
|
||||||
|
mountPath: /etc/clickhouse-server/users.d/logging.xml
|
||||||
|
subPath: clickhouse-user-config.xml
|
||||||
|
readOnly: true
|
||||||
|
volumes:
|
||||||
|
- name: event-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: event-data-pvc
|
||||||
|
- name: clickhouse-config
|
||||||
|
configMap:
|
||||||
|
name: clickhouse-config
|
||||||
|
- name: clickhouse-user-config
|
||||||
|
configMap:
|
||||||
|
name: clickhouse-user-config
|
||||||
11
deploy/plausible/clickhouse-pvc.yaml
Normal file
11
deploy/plausible/clickhouse-pvc.yaml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: event-data-pvc
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 10Gi
|
||||||
|
storageClassName: longhorn
|
||||||
14
deploy/plausible/clickhouse-user-config.yaml
Normal file
14
deploy/plausible/clickhouse-user-config.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: clickhouse-user-config
|
||||||
|
data:
|
||||||
|
clickhouse-user-config.xml: |
|
||||||
|
<clickhouse>
|
||||||
|
<profiles>
|
||||||
|
<default>
|
||||||
|
<log_queries>0</log_queries>
|
||||||
|
<log_query_threads>0</log_query_threads>
|
||||||
|
</default>
|
||||||
|
</profiles>
|
||||||
|
</clickhouse>
|
||||||
17
deploy/plausible/kustomization.yaml
Normal file
17
deploy/plausible/kustomization.yaml
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
|
||||||
|
namespace: plausible
|
||||||
|
|
||||||
|
resources:
|
||||||
|
- clickhouse-config.yaml
|
||||||
|
- clickhouse-pvc.yaml
|
||||||
|
- kustomization.yaml
|
||||||
|
- mail-svc.yaml
|
||||||
|
- plausible-secret.yaml
|
||||||
|
- clickhouse-deploy.yaml
|
||||||
|
- clickhouse-user-config.yaml
|
||||||
|
- mail-deploy.yaml
|
||||||
|
- plausible-deploy.yaml
|
||||||
|
- plausible-ingress.yaml
|
||||||
|
- plausible-svc.yaml
|
||||||
19
deploy/plausible/mail-deploy.yaml
Normal file
19
deploy/plausible/mail-deploy.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: mail
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: mail
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: mail
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: mail
|
||||||
|
image: bytemark/smtp
|
||||||
|
ports:
|
||||||
|
- containerPort: 25
|
||||||
11
deploy/plausible/mail-svc.yaml
Normal file
11
deploy/plausible/mail-svc.yaml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: mail
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: mail
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 25
|
||||||
|
targetPort: 25
|
||||||
26
deploy/plausible/plausible-deploy.yaml
Normal file
26
deploy/plausible/plausible-deploy.yaml
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: plausible
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: plausible
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: plausible
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: plausible
|
||||||
|
image: plausible/analytics:latest
|
||||||
|
command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"
|
||||||
|
ports:
|
||||||
|
- containerPort: 8000
|
||||||
|
envFrom:
|
||||||
|
- secretRef:
|
||||||
|
name: plausible-env
|
||||||
24
deploy/plausible/plausible-ingress.yaml
Normal file
24
deploy/plausible/plausible-ingress.yaml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: plausible
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-prod
|
||||||
|
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
|
||||||
|
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- webstats.beatrice.wtf
|
||||||
|
secretName: plausible-tls
|
||||||
|
rules:
|
||||||
|
- host: webstats.beatrice.wtf
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: plausible
|
||||||
|
port:
|
||||||
|
number: 8000
|
||||||
20
deploy/plausible/plausible-secret.yaml
Normal file
20
deploy/plausible/plausible-secret.yaml
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
ADMIN_USER_EMAIL: aGVsbG9AYmVhdHJpY2Uud3Rm
|
||||||
|
ADMIN_USER_NAME: YmVhdHJpY2U=
|
||||||
|
ADMIN_USER_PWD: Xl55Z1d4UGtEMiRQSlF1JXZAQ1Q1ZF5lNnRDbmhBXk5qZnpTVlYyISNTN2U3N25wU25wZkpUYWF6RGVWRFVSTA==
|
||||||
|
BASE_URL: aHR0cHM6Ly93ZWJzdGF0cy5iZWF0cmljZS53dGY=
|
||||||
|
DATABASE_URL: cG9zdGdyZXM6Ly9wbGF1c2libGU6cnY5Mzhnd2d3ZzQzNGYyZjRoZzNnN2gzMDg5N2czaDVnMDk4akBwb3N0Z3Jlcy1iYXNlLXJ3LnBvc3RncmVzOjU0MzIvcGxhdXNpYmxlX2Ri
|
||||||
|
DISABLE_REGISTRATION: dHJ1ZQ==
|
||||||
|
MAILER_EMAIL: Y2xvdWRAbWluZC1vdmVyZmxvdy5uZXQ=
|
||||||
|
PORT: ODAwMA==
|
||||||
|
SECRET_KEY_BASE: M1FRQS9EdEdmR3c3cytjMzF2dnlmZ3lVc2F4RStNOWsxSWIvNVBjTUJIQjVHNWdpek00a2tSQ2lvbUFkU0lKR3FybGJ5R2h6VEFOcUJLWWZyeFZ0eHc9PQ==
|
||||||
|
SMTP_HOST_ADDR: bWFpbC5taW5kLW92ZXJmbG93Lm5ldA==
|
||||||
|
SMTP_HOST_PORT: NTg3
|
||||||
|
SMTP_HOST_SSL_ENABLED: ZmFsc2U=
|
||||||
|
SMTP_USER_NAME: Y2xvdWRAbWluZC1vdmVyZmxvdy5uZXQ=
|
||||||
|
SMTP_USER_PWD: UGNZY2h1TExVeWZUMmd2WTRUeDd3UTU3NVRucWp4ODR6Vk5vUDZNYg==
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
name: plausible-env
|
||||||
11
deploy/plausible/plausible-svc.yaml
Normal file
11
deploy/plausible/plausible-svc.yaml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: plausible
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: plausible
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 8000
|
||||||
|
targetPort: 8000
|
||||||
Reference in New Issue
Block a user