apiVersion: v1 kind: List items: - apiVersion: v1 kind: Namespace metadata: name: blog - apiVersion: apps/v1 kind: Deployment metadata: labels: app: blog name: blog namespace: blog spec: selector: matchLabels: app: blog template: metadata: labels: app: blog spec: containers: - image: ghcr.io/astral-sh/uv:debian command: - uv - run - --with - git+https://github.com/alexpdp7/alexpdp7.git#subdirectory=blog - python - -m - blog - --key-cert - /tls-gemini/tls.key - /tls-gemini/tls.crt - https - alex.corcoles.net env: - name: OTEL_EXPORTER_OTLP_ENDPOINT value: http://clickhouse.h1.int.pdp7.net:4317 - name: OTEL_EXPORTER_OTLP_INSECURE value: "true" imagePullPolicy: Always name: blog volumeMounts: - mountPath: /tls-gemini name: tls-gemini volumes: - name: tls-gemini secret: secretName: tls-gemini - apiVersion: v1 kind: Service metadata: labels: app: blog name: http namespace: blog spec: ports: - port: 8000 protocol: TCP targetPort: 8000 selector: app: blog - apiVersion: v1 kind: Service metadata: labels: app: blog name: gemini namespace: blog spec: ports: - nodePort: 31965 port: 1965 protocol: TCP targetPort: 1965 selector: app: blog type: NodePort - apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: http namespace: blog spec: rules: - host: alex.corcoles.net http: paths: - backend: service: name: http port: number: 8000 path: / pathType: Prefix