diff --git a/README.md b/README.md index e69de29..345e6ae 100644 --- a/README.md +++ b/README.md @@ -0,0 +1 @@ +Test diff --git a/dragonfly.yaml b/dragonfly.yaml new file mode 100644 index 0000000..1db6752 --- /dev/null +++ b/dragonfly.yaml @@ -0,0 +1,28 @@ +--- +apiVersion: secretgenerator.mittwald.de/v1alpha1 +kind: StringSecret +metadata: + name: aldo-memelord-redis +spec: + fields: + - fieldName: redis-password + length: "32" + encoding: hex-- +--- +apiVersion: dragonflydb.io/v1alpha1 +kind: Dragonfly +metadata: + name: aldo-memelord-redis +spec: + authentication: + passwordFromSecret: + name: aldo-memelord-redis + key: redis-password + replicas: 1 + resources: + requests: + cpu: 500m + memory: 500Mi + limits: + cpu: 600m + memory: 750Mi diff --git a/memelord.yaml b/memelord.yaml new file mode 100644 index 0000000..9aa2e1d --- /dev/null +++ b/memelord.yaml @@ -0,0 +1,48 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: memelord +spec: + replicas: 1 + selector: + matchLabels: + app: memelord + template: + metadata: + labels: + app: memelord + spec: + containers: + - name: memelord + image: ghcr.io/l4rm4nd/memelord:latest + imagePullPolicy: Always + ports: + - name: http + containerPort: 8000 + volumeMounts: + - mountPath: /opt/app/myproject/settings.py + name: settings-volume + subPath: settings.py + env: + - name: DOMAIN + value: aldo-memelord.ee-lte-1.codemowers.io + - name: POSTGRES_USER + value: aldo-memelord + - name: POSTGRES_HOST + value: aldo-memelord-database-rw + - name: POSTGRES_PORT + value: "5432" + - name: DB_ENGINE + value: postgres + - name: POSTGRES_DATABASE + value: aldo-memelord + - name: POSTGRES_PASSWORD + valueFrom: + secretKeyRef: + name: aldo-memelord-database + key: password + volumes: + - name: settings-volume + configMap: + name: settings + diff --git a/naitamaailmale.yaml b/naitamaailmale.yaml new file mode 100644 index 0000000..df8e603 --- /dev/null +++ b/naitamaailmale.yaml @@ -0,0 +1,49 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: memelord +spec: + type: ClusterIP + selector: + app: memelord + ports: + - name: http + port: 80 + targetPort: 8000 +--- +apiVersion: cert-manager.io/v1 +kind: Certificate +metadata: + name: memelord +spec: + secretName: aldo-memelord-tls + dnsNames: + - aldo-memelord.ee-lte-1.codemowers.io + issuerRef: + name: letsencrypt + kind: ClusterIssuer +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: aldo-memelord + annotations: + traefik.ingress.kubernetes.io/router.entrypoints: websecure +spec: + ingressClassName: traefik + rules: + - host: aldo-memelord.ee-lte-1.codemowers.io + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: memelord + port: + number: 80 + tls: + - secretName: aldo-memelord-tls + + diff --git a/postgres.yaml b/postgres.yaml new file mode 100644 index 0000000..96099df --- /dev/null +++ b/postgres.yaml @@ -0,0 +1,58 @@ +--- +apiVersion: secretgenerator.mittwald.de/v1alpha1 +kind: StringSecret +metadata: + name: aldo-memelord-database + labels: + cnpg.io/reload: "true" +spec: + data: + username: aldo-memelord + fields: + - fieldName: password + length: "32" + encoding: hex +--- +apiVersion: postgresql.cnpg.io/v1 +kind: Cluster +metadata: + name: aldo-memelord-database +spec: + instances: 1 + imageName: ghcr.io/cloudnative-pg/postgresql:17 + storage: + size: 1Gi + storageClass: postgres + affinity: + podAntiAffinityType: required + nodeSelector: + codemowers.io/lvm-ubuntu-vg: enterprise-ssd + resources: + requests: + cpu: "100m" + memory: "1Gi" + limits: + cpu: "1" + memory: "4Gi" + postgresql: + parameters: + max_connections: "300" + shared_buffers: "512MB" + effective_cache_size: "2GB" + managed: + roles: + - name: aldo-memelord + ensure: present + login: true + passwordSecret: + name: aldo-memelord-database +--- +apiVersion: postgresql.cnpg.io/v1 +kind: Database +metadata: + name: aldo-memelord +spec: + name: aldo-memelord + owner: aldo-memelord + cluster: + name: aldo-memelord-database diff --git a/tellibucket.yaml b/tellibucket.yaml new file mode 100644 index 0000000..51a0aae --- /dev/null +++ b/tellibucket.yaml @@ -0,0 +1,49 @@ +--- +apiVersion: s3.onyxia.sh/v1alpha1 +kind: Policy +metadata: + name: aldo-memelord-policy +spec: + name: aldo-memelord-policy + s3InstanceRef: minio/default + policyContent: >- + { + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "s3:ListBucket", + "s3:GetObject", + "s3:PutObject" + ], + "Resource": [ + "arn:aws:s3:::aldo-memelord", + "arn:aws:s3:::aldo-memelord/*" + ] + } + ] + } +--- +apiVersion: s3.onyxia.sh/v1alpha1 +kind: S3User +metadata: + name: aldo-memelord-bucket +spec: + accessKey: aldo-memelord-bucket # This is automatically created + policies: + - aldo-memelord-policy + s3InstanceRef: minio/default +--- +apiVersion: s3.onyxia.sh/v1alpha1 +kind: Bucket +metadata: + name: aldo-memelord +spec: + name: aldo-memelord + s3InstanceRef: minio/default + quota: + default: 100000000 + + +