Skip to content
Snippets Groups Projects
Select Git revision
  • 5d27a8cc2a084d438819b7f0e526778f2335a80d
  • master default protected
2 results

polls.yaml

Blame
  • polls.yaml 1.49 KiB
    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      name: polls
      labels:
        app: polls
    spec:
      replicas: 3
      template:
        metadata:
          labels:
            app: polls
        spec:
          containers:
           name: polls-app
            image: ${CI_REGISTRY}/${CI_PROJECT_NAME}/polls:${CI_COMMIT_SHORT_SHA}
            # This setting makes nodes pull the docker image every time before
            # starting the pod. This is useful when debugging, but should be turned
            # off in production.
            imagePullPolicy: Always
            env:
                - name: DATABASE_USER
                  valueFrom:
                    secretKeyRef:
                      name: postgresql-credentials
                      key: username
                - name: DATABASE_PASSWORD
                  valueFrom:
                    secretKeyRef:
                      name: postgresql-credentials
                      key: password
            ports:
            - containerPort: 8080
          volumes:
            - name: postgresql-credentials
              secret:
                secretName: postgresql
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: polls
      labels:
        app: polls
    spec:
      type: ClusterIP
      ports:
      - port: 80
        targetPort: 8080
      selector:
        app: polls
    ---
    apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
      annotations:
        kubernetes.io/ingress.class: traefik
      labels:
        app: polls
      name: polls
    spec:
      rules:
      - host: ${CI_PROJECT_NAME}.pasteur.cloud
        http:
          paths:
          - backend:
              serviceName: polls
              servicePort: 80
            path: /