| | |
| | | --- |
| | | kind: Template |
| | | apiVersion: v1 |
| | | metadata: |
| | | name: mongodb-persistent |
| | | annotations: |
| | | openshift.io/display-name: MongoDB |
| | | description: |- |
| | | MongoDB database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/blob/master/3.2/README.md. |
| | | |
| | | NOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template. |
| | | iconClass: icon-mongodb |
| | | tags: database,mongodb |
| | | openshift.io/long-description: This template provides a standalone MongoDB server |
| | | with a database created. The database is stored on persistent storage. The |
| | | database name, username, and password are chosen via parameters when provisioning |
| | | this service. |
| | | openshift.io/provider-display-name: Red Hat, Inc. |
| | | openshift.io/documentation-url: https://docs.openshift.org/latest/using_images/db_images/mongodb.html |
| | | openshift.io/support-url: https://access.redhat.com |
| | | kind: Template |
| | | labels: |
| | | template: mongodb-ephemeral-template |
| | | message: |- |
| | | The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}. |
| | | |
| | |
| | | Connection URL: mongodb://${MONGODB_USER}:${MONGODB_PASSWORD}@${DATABASE_SERVICE_NAME}/${MONGODB_DATABASE} |
| | | |
| | | For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/blob/master/3.2/README.md. |
| | | labels: |
| | | template: mongodb-persistent-template |
| | | metadata: |
| | | annotations: |
| | | description: |- |
| | | MongoDB database service, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/blob/master/3.2/README.md. |
| | | |
| | | WARNING: Any data stored will be lost upon pod destruction. Only use this template for testing |
| | | iconClass: icon-mongodb |
| | | openshift.io/display-name: MongoDB (Ephemeral) |
| | | openshift.io/documentation-url: https://docs.openshift.org/latest/using_images/db_images/mongodb.html |
| | | openshift.io/long-description: This template provides a standalone MongoDB server |
| | | with a database created. The database is not stored on persistent storage, |
| | | so any restart of the service will result in all data being lost. The database |
| | | name, username, and password are chosen via parameters when provisioning this |
| | | service. |
| | | openshift.io/provider-display-name: Red Hat, Inc. |
| | | openshift.io/support-url: https://access.redhat.com |
| | | tags: database,mongodb |
| | | name: mongodb-ephemeral |
| | | objects: |
| | | - kind: Secret |
| | | apiVersion: v1 |
| | | - apiVersion: v1 |
| | | kind: Secret |
| | | metadata: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | annotations: |
| | | template.openshift.io/expose-username: "{.data['database-user']}" |
| | | template.openshift.io/expose-password: "{.data['database-password']}" |
| | | template.openshift.io/expose-admin_password: "{.data['database-admin-password']}" |
| | | template.openshift.io/expose-database_name: "{.data['database-name']}" |
| | | template.openshift.io/expose-password: "{.data['database-password']}" |
| | | template.openshift.io/expose-username: "{.data['database-user']}" |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | stringData: |
| | | database-user: "${MONGODB_USER}" |
| | | database-password: "${MONGODB_PASSWORD}" |
| | | database-admin-password: "${MONGODB_ADMIN_PASSWORD}" |
| | | database-name: "${MONGODB_DATABASE}" |
| | | - kind: Service |
| | | apiVersion: v1 |
| | | database-password: "${MONGODB_PASSWORD}" |
| | | database-user: "${MONGODB_USER}" |
| | | - apiVersion: v1 |
| | | kind: Service |
| | | metadata: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | annotations: |
| | | template.openshift.io/expose-uri: mongodb://{.spec.clusterIP}:{.spec.ports[?(.name=="mongo")].port} |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | spec: |
| | | ports: |
| | | - name: mongo |
| | | protocol: TCP |
| | | port: 27017 |
| | | targetPort: 27017 |
| | | nodePort: 0 |
| | | port: 27017 |
| | | protocol: TCP |
| | | targetPort: 27017 |
| | | selector: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | type: ClusterIP |
| | | sessionAffinity: None |
| | | type: ClusterIP |
| | | status: |
| | | loadBalancer: {} |
| | | - kind: PersistentVolumeClaim |
| | | apiVersion: v1 |
| | | - apiVersion: v1 |
| | | kind: DeploymentConfig |
| | | metadata: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | spec: |
| | | accessModes: |
| | | - ReadWriteOnce |
| | | resources: |
| | | requests: |
| | | storage: "${VOLUME_CAPACITY}" |
| | | - kind: DeploymentConfig |
| | | apiVersion: v1 |
| | | metadata: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | annotations: |
| | | template.alpha.openshift.io/wait-for-ready: 'true' |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | spec: |
| | | replicas: 1 |
| | | selector: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | strategy: |
| | | type: Recreate |
| | | template: |
| | | metadata: |
| | | labels: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | spec: |
| | | containers: |
| | | - capabilities: {} |
| | | env: |
| | | - name: MONGODB_USER |
| | | valueFrom: |
| | | secretKeyRef: |
| | | key: database-user |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | - name: MONGODB_PASSWORD |
| | | valueFrom: |
| | | secretKeyRef: |
| | | key: database-password |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | - name: MONGODB_ADMIN_PASSWORD |
| | | valueFrom: |
| | | secretKeyRef: |
| | | key: database-admin-password |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | - name: MONGODB_DATABASE |
| | | valueFrom: |
| | | secretKeyRef: |
| | | key: database-name |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | image: " " |
| | | imagePullPolicy: IfNotPresent |
| | | livenessProbe: |
| | | initialDelaySeconds: 30 |
| | | tcpSocket: |
| | | port: 27017 |
| | | timeoutSeconds: 1 |
| | | name: mongodb |
| | | ports: |
| | | - containerPort: 27017 |
| | | protocol: TCP |
| | | readinessProbe: |
| | | exec: |
| | | command: |
| | | - "/bin/sh" |
| | | - "-i" |
| | | - "-c" |
| | | - mongo 127.0.0.1:27017/$MONGODB_DATABASE -u $MONGODB_USER -p $MONGODB_PASSWORD |
| | | --eval="quit()" |
| | | initialDelaySeconds: 3 |
| | | timeoutSeconds: 1 |
| | | resources: |
| | | limits: |
| | | memory: "${MEMORY_LIMIT}" |
| | | securityContext: |
| | | capabilities: {} |
| | | privileged: false |
| | | terminationMessagePath: "/dev/termination-log" |
| | | volumeMounts: |
| | | - mountPath: "/var/lib/mongodb/data" |
| | | name: "${DATABASE_SERVICE_NAME}-data" |
| | | dnsPolicy: ClusterFirst |
| | | restartPolicy: Always |
| | | volumes: |
| | | - emptyDir: |
| | | medium: '' |
| | | name: "${DATABASE_SERVICE_NAME}-data" |
| | | triggers: |
| | | - type: ImageChange |
| | | imageChangeParams: |
| | | - imageChangeParams: |
| | | automatic: true |
| | | containerNames: |
| | | - mongodb |
| | |
| | | name: mongodb:${MONGODB_VERSION} |
| | | namespace: "${NAMESPACE}" |
| | | lastTriggeredImage: '' |
| | | type: ImageChange |
| | | - type: ConfigChange |
| | | replicas: 1 |
| | | selector: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | template: |
| | | metadata: |
| | | labels: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | spec: |
| | | containers: |
| | | - name: mongodb |
| | | image: " " |
| | | ports: |
| | | - containerPort: 27017 |
| | | protocol: TCP |
| | | readinessProbe: |
| | | timeoutSeconds: 1 |
| | | initialDelaySeconds: 3 |
| | | exec: |
| | | command: |
| | | - "/bin/sh" |
| | | - "-i" |
| | | - "-c" |
| | | - mongo 127.0.0.1:27017/$MONGODB_DATABASE -u $MONGODB_USER -p $MONGODB_PASSWORD |
| | | --eval="quit()" |
| | | livenessProbe: |
| | | timeoutSeconds: 1 |
| | | initialDelaySeconds: 30 |
| | | tcpSocket: |
| | | port: 27017 |
| | | env: |
| | | - name: MONGODB_USER |
| | | valueFrom: |
| | | secretKeyRef: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | key: database-user |
| | | - name: MONGODB_PASSWORD |
| | | valueFrom: |
| | | secretKeyRef: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | key: database-password |
| | | - name: MONGODB_ADMIN_PASSWORD |
| | | valueFrom: |
| | | secretKeyRef: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | key: database-admin-password |
| | | - name: MONGODB_DATABASE |
| | | valueFrom: |
| | | secretKeyRef: |
| | | name: "${DATABASE_SERVICE_NAME}" |
| | | key: database-name |
| | | resources: |
| | | limits: |
| | | memory: "${MEMORY_LIMIT}" |
| | | volumeMounts: |
| | | - name: "${DATABASE_SERVICE_NAME}-data" |
| | | mountPath: "/var/lib/mongodb/data" |
| | | terminationMessagePath: "/dev/termination-log" |
| | | imagePullPolicy: IfNotPresent |
| | | capabilities: {} |
| | | securityContext: |
| | | capabilities: {} |
| | | privileged: false |
| | | volumes: |
| | | - name: "${DATABASE_SERVICE_NAME}-data" |
| | | persistentVolumeClaim: |
| | | claimName: "${DATABASE_SERVICE_NAME}" |
| | | restartPolicy: Always |
| | | dnsPolicy: ClusterFirst |
| | | status: {} |
| | | parameters: |
| | | - name: MEMORY_LIMIT |
| | |
| | | description: Password for the database admin user. |
| | | generate: expression |
| | | from: "[a-zA-Z0-9]{16}" |
| | | required: true |
| | | - name: VOLUME_CAPACITY |
| | | displayName: Volume Capacity |
| | | description: Volume space available for data, e.g. 512Mi, 2Gi. |
| | | value: 1Gi |
| | | required: true |
| | | - name: MONGODB_VERSION |
| | | displayName: Version of MongoDB Image |