apiVersion: v1 kind: Namespace metadata: name: cycle-dev --- apiVersion: apps/v1 kind: Deployment metadata: name: cycle-backend-deployment namespace: cycle-dev labels: app: cycle-backend spec: replicas: 1 selector: matchLabels: app: cycle-backend template: metadata: labels: app: cycle-backend spec: containers: - name: cycle-backend image: gitea.webart-tech.ru/webart/strava-backend/platformer:7ec97756963dc38391f31a92bd90f03b8d493a80 env: - name: APP_PUBLIC_URL value: "https://cycle-rider.ru" - name: DB_URI value: "postgresql+asyncpg://gen_user:D%5C8C34*Bv%3E%5CVwD@147.45.144.129:5432/default_db" ports: - containerPort: 8000 --- apiVersion: v1 kind: Service metadata: name: cycle-backend-service namespace: cycle-dev spec: ports: - port: 8000 targetPort: 8000 name: tcp selector: app: cycle-backend --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: cycle-ingress namespace: cycle-dev annotations: kubernetes.io/ingress.class: "traefik" cert-manager.io/cluster-issuer: letsencrypt-prod spec: ingressClassName: traefik rules: - host: "cycle-rider.ru" http: paths: - path: /docs pathType: Prefix backend: service: name: cycle-backend-service port: number: 8000 - path: /openapi.json pathType: ImplementationSpecific backend: service: name: cycle-backend-service port: number: 8000 - path: /api pathType: Prefix backend: service: name: cycle-backend-service port: number: 8000 tls: - hosts: - cycle-rider.ru secretName: cycle-dev-tls