From e134062a460ecb8c7ddcd70983584df590170e90 Mon Sep 17 00:00:00 2001 From: mms-build-account Date: Wed, 2 Oct 2024 05:44:26 -0400 Subject: [PATCH] Kubernetes Enterprise Operator Release 1.28.0 (#296) * Updated * Updated --- crds.yaml | 1229 ++++++++++++++++- .../107.0.1.8507-1/ubi/Dockerfile | 15 +- .../107.0.1.8507-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.10.8627-1/ubi/Dockerfile | 60 + .../107.0.10.8627-1_1.25.0/ubi/Dockerfile | 57 + .../107.0.10.8627-1_1.26.0/ubi/Dockerfile | 57 + .../107.0.10.8627-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.11.8645-1/ubi/Dockerfile | 60 + .../107.0.11.8645-1_1.25.0/ubi/Dockerfile | 57 + .../107.0.11.8645-1_1.26.0/ubi/Dockerfile | 57 + .../107.0.11.8645-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.2.8531-1/ubi/Dockerfile | 15 +- .../107.0.2.8531-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.3.8550-1/ubi/Dockerfile | 15 +- .../107.0.3.8550-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.4.8567-1/ubi/Dockerfile | 15 +- .../107.0.4.8567-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.6.8587-1/ubi/Dockerfile | 15 +- .../107.0.6.8587-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.7.8596-1/ubi/Dockerfile | 15 +- .../107.0.7.8596-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.8.8615-1/ubi/Dockerfile | 15 +- .../107.0.8.8615-1_1.27.0/ubi/Dockerfile | 57 + .../107.0.9.8621-1/ubi/Dockerfile | 15 +- .../107.0.9.8621-1_1.27.0/ubi/Dockerfile | 57 + .../108.0.0.8694-1/ubi/Dockerfile | 60 + .../108.0.0.8694-1_1.25.0/ubi/Dockerfile | 57 + .../108.0.0.8694-1_1.26.0/ubi/Dockerfile | 57 + .../108.0.0.8694-1_1.27.0/ubi/Dockerfile | 57 + .../12.0.29.7785-1/ubi/Dockerfile | 15 +- .../12.0.29.7785-1_1.27.0/ubi/Dockerfile | 57 + .../12.0.30.7791-1/ubi/Dockerfile | 15 +- .../12.0.30.7791-1_1.27.0/ubi/Dockerfile | 57 + .../12.0.31.7825-1/ubi/Dockerfile | 15 +- .../12.0.31.7825-1_1.27.0/ubi/Dockerfile | 57 + .../12.0.32.7857-1/ubi/Dockerfile | 15 +- .../12.0.32.7857-1_1.27.0/ubi/Dockerfile | 57 + .../12.0.33.7866-1/ubi/Dockerfile | 15 +- .../12.0.33.7866-1_1.27.0/ubi/Dockerfile | 57 + .../13.22.0.9099-1/ubi/Dockerfile | 53 + .../13.22.0.9099-1_1.25.0/ubi/Dockerfile | 57 + .../13.22.0.9099-1_1.26.0/ubi/Dockerfile | 57 + .../13.22.0.9099-1_1.27.0/ubi/Dockerfile | 57 + .../1.28.0/ubi/Dockerfile | 87 ++ .../2.0.2/ubi/Dockerfile | 1 + .../1.28.0/ubi/Dockerfile | 35 + .../1.28.0/ubi/Dockerfile | 34 + .../1.28.0/ubi/Dockerfile | 26 + .../1.28.0/ubi/Dockerfile | 39 + .../7.0.10/ubi/Dockerfile | 77 ++ .../7.0.11/ubi/Dockerfile | 77 ++ .../8.0.0/ubi/Dockerfile | 77 ++ mongodb-enterprise-multi-cluster.yaml | 22 +- mongodb-enterprise-openshift.yaml | 118 +- mongodb-enterprise.yaml | 22 +- .../env_variables.sh | 2 - .../output/0030_verify_access_to_clusters.out | 14 +- ...ubectl_mongodb_configure_multi_cluster.out | 2 - .../output/0205_helm_configure_repo.out | 2 +- .../output/0210_helm_install_operator.out | 22 +- .../output/0211_check_operator_deployment.out | 4 +- ...312_ops_manager_wait_for_running_state.out | 10 +- ...322_ops_manager_wait_for_running_state.out | 14 +- ...522_ops_manager_wait_for_running_state.out | 16 +- tools/multicluster/go.mod | 2 - tools/multicluster/pkg/common/common.go | 5 + 66 files changed, 3616 insertions(+), 174 deletions(-) create mode 100644 dockerfiles/mongodb-agent/107.0.1.8507-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.10.8627-1/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.10.8627-1_1.25.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.10.8627-1_1.26.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.10.8627-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.11.8645-1/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.11.8645-1_1.25.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.11.8645-1_1.26.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.11.8645-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.2.8531-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.3.8550-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.4.8567-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.6.8587-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.7.8596-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.8.8615-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/107.0.9.8621-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/108.0.0.8694-1/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/108.0.0.8694-1_1.25.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/108.0.0.8694-1_1.26.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/108.0.0.8694-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/12.0.29.7785-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/12.0.30.7791-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/12.0.31.7825-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/12.0.32.7857-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/12.0.33.7866-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/13.22.0.9099-1/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/13.22.0.9099-1_1.25.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/13.22.0.9099-1_1.26.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-agent/13.22.0.9099-1_1.27.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-database/1.28.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-init-appdb/1.28.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-init-database/1.28.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-init-ops-manager/1.28.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-operator/1.28.0/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-ops-manager/7.0.10/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-ops-manager/7.0.11/ubi/Dockerfile create mode 100644 dockerfiles/mongodb-enterprise-ops-manager/8.0.0/ubi/Dockerfile diff --git a/crds.yaml b/crds.yaml index bca1186..a94bfe2 100644 --- a/crds.yaml +++ b/crds.yaml @@ -597,11 +597,154 @@ spec: - path type: object type: object + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the + name "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array type: object x-kubernetes-preserve-unknown-fields: true configSrvPodSpec: properties: persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity properties: multiple: properties: @@ -680,6 +823,14 @@ spec: credentials: description: Name of the Secret holding credentials information type: string + duplicateServiceObjects: + description: |- + In few service mesh options for ex: Istio, by default we would need to duplicate the + service objects created per pod in all the clusters to enable DNS resolution. Users can + however configure their ServiceMesh with DNS proxy(https://istio.io/latest/docs/ops/configuration/traffic-management/dns-proxy/) + enabled in which case the operator doesn't need to create the service objects per cluster. This options tells the operator + whether it should create the service objects in all the clusters or not. By default, if not specified the operator would create the duplicate svc objects. + type: boolean externalAccess: description: ExternalAccessConfiguration provides external access configuration. @@ -715,7 +866,8 @@ spec: - FATAL type: string memberConfig: - description: MemberConfig + description: MemberConfig allows to specify votes, priorities and + tags for each of the mongodb process. items: properties: priority: @@ -933,6 +1085,147 @@ spec: - path type: object type: object + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the + name "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array type: object x-kubernetes-preserve-unknown-fields: true mongosCount: @@ -940,6 +1233,8 @@ spec: mongosPodSpec: properties: persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity properties: multiple: properties: @@ -1002,6 +1297,8 @@ spec: podSpec: properties: persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity properties: multiple: properties: @@ -1478,42 +1775,637 @@ spec: type: integer type: object type: object - readinessProbe: + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the + name "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array + type: object + x-kubernetes-preserve-unknown-fields: true + shardCount: + type: integer + shardOverrides: + description: |- + ShardOverrides allow for overriding the configuration of a specific shard. + It replaces deprecated spec.shard.shardSpecificPodSpec field. When spec.shard.shardSpecificPodSpec is still defined then + spec.shard.shardSpecificPodSpec is applied first to the particular shard and then spec.shardOverrides is applied on top + of that (if defined for the same shard). + items: + properties: + additionalMongodConfig: + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for + the mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation + for the mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have + total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log + file before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have + total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log + file before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + clusterSpecList: + items: + description: |- + ClusterSpecItemOverride is almost exact copy of ClusterSpecItem object. + The object is used in ClusterSpecList in ShardedClusterComponentOverrideSpec in shard overrides. + The difference lies in some fields being optional, e.g. Members to make it possible to NOT override fields and rely on + what was set in top level shard configuration. + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + x-kubernetes-preserve-unknown-fields: true + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + type: object + type: array + memberConfig: + description: Process configuration override for this shard. + Used in SingleCluster only. The number of items specified + must be >= spec.mongodsPerShardCount or spec.shardOverride.members. + items: properties: - environmentVariables: + priority: + type: string + tags: additionalProperties: type: string type: object + votes: + type: integer type: object - startupOptions: - additionalProperties: - type: string - description: |- - StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains - log rotation settings as defined here: - type: object - systemLog: - description: DEPRECATED please use mongod.systemLog - properties: - destination: - type: string - logAppend: - type: boolean - path: - type: string - required: - - destination - - logAppend - - path - type: object - type: object - type: object - x-kubernetes-preserve-unknown-fields: true - shardCount: - type: integer + type: array + x-kubernetes-preserve-unknown-fields: true + members: + description: Number of member nodes in this shard. Used only + in SingleCluster. For MultiCluster the number of members is + specified in ShardOverride.ClusterSpecList. + type: integer + podSpec: + description: The following override fields work for SingleCluster + only. For MultiCluster - fields from specific clusters are + used. + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + shardNames: + items: + type: string + minItems: 1 + type: array + statefulSet: + description: Statefulset override for this particular shard. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around + Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - shardNames + type: object + type: array shardPodSpec: properties: persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity properties: multiple: properties: @@ -1564,11 +2456,14 @@ spec: x-kubernetes-preserve-unknown-fields: true type: object shardSpecificPodSpec: - description: ShardSpecificPodSpec allows you to provide a Statefulset - override per shard. + description: |- + ShardSpecificPodSpec allows you to provide a Statefulset override per shard. + DEPRECATED please use spec.shard.shardOverrides instead items: properties: persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity properties: multiple: properties: @@ -1644,6 +2539,15 @@ spec: required: - spec type: object + topology: + description: |- + Topology sets the desired cluster topology of MongoDB resources + It defaults (if empty or not set) to SingleCluster. If MultiCluster specified, + then clusterSpecList field is mandatory and at least one member cluster has to be specified. + enum: + - SingleCluster + - MultiCluster + type: string type: enum: - Standalone @@ -1670,6 +2574,8 @@ spec: type: object configServerCount: type: integer + featureCompatibilityVersion: + type: string lastTransition: type: string link: @@ -1687,6 +2593,18 @@ spec: type: integer phase: type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array resourcesNotReady: items: description: ResourceNotReady describes the dependent resource which @@ -1716,6 +2634,23 @@ spec: type: array shardCount: type: integer + sizeStatusInClusters: + description: MongodbShardedSizeStatusInClusters describes the number + and sizes of replica sets members deployed across member clusters + properties: + configServerMongodsInClusters: + additionalProperties: + type: integer + type: object + mongosCountInClusters: + additionalProperties: + type: integer + type: object + shardMongodsInClusters: + additionalProperties: + type: integer + type: object + type: object version: type: string warnings: @@ -2159,7 +3094,8 @@ spec: type: object type: object memberConfig: - description: MemberConfig + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. items: properties: priority: @@ -2172,10 +3108,63 @@ spec: type: integer type: object type: array - x-kubernetes-preserve-unknown-fields: true members: description: Amount of members for this MongoDB Replica Set type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object service: description: this is an optional service, it will get the name "-service" in case not provided @@ -2566,6 +3555,15 @@ spec: required: - spec type: object + topology: + description: |- + Topology sets the desired cluster topology of MongoDB resources + It defaults (if empty or not set) to SingleCluster. If MultiCluster specified, + then clusterSpecList field is mandatory and at least one member cluster has to be specified. + enum: + - SingleCluster + - MultiCluster + type: string type: enum: - Standalone @@ -2617,6 +3615,18 @@ spec: type: integer phase: type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array resourcesNotReady: items: description: ResourceNotReady describes the dependent @@ -2653,6 +3663,8 @@ spec: type: object type: array type: object + featureCompatibilityVersion: + type: string lastTransition: type: string link: @@ -2664,6 +3676,18 @@ spec: type: integer phase: type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array resourcesNotReady: items: description: ResourceNotReady describes the dependent resource which @@ -2817,6 +3841,18 @@ spec: type: string project: type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array resourcesNotReady: items: description: ResourceNotReady describes the dependent resource which @@ -3270,7 +4306,8 @@ spec: type: object type: object memberConfig: - description: MemberConfig + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. items: properties: priority: @@ -3283,11 +4320,64 @@ spec: type: integer type: object type: array - x-kubernetes-preserve-unknown-fields: true members: description: Amount of members for this MongoDB Replica Set type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object service: description: this is an optional service, it will get the name "-service" in case not provided @@ -3351,16 +4441,9 @@ spec: type: string featureCompatibilityVersion: type: string - logLevel: - enum: - - DEBUG - - INFO - - WARN - - ERROR - - FATAL - type: string memberConfig: - description: MemberConfig + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. items: properties: priority: @@ -3417,6 +4500,8 @@ spec: podSpec: properties: persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity properties: multiple: properties: @@ -4488,6 +5573,8 @@ spec: type: array configServerCount: type: integer + featureCompatibilityVersion: + type: string lastTransition: type: string link: @@ -4505,6 +5592,18 @@ spec: type: integer phase: type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array resourcesNotReady: items: description: ResourceNotReady describes the dependent resource @@ -4534,6 +5633,24 @@ spec: type: array shardCount: type: integer + sizeStatusInClusters: + description: MongodbShardedSizeStatusInClusters describes the + number and sizes of replica sets members deployed across member + clusters + properties: + configServerMongodsInClusters: + additionalProperties: + type: integer + type: object + mongosCountInClusters: + additionalProperties: + type: integer + type: object + shardMongodsInClusters: + additionalProperties: + type: integer + type: object + type: object version: type: string warnings: @@ -4564,6 +5681,18 @@ spec: type: integer phase: type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array resourcesNotReady: items: description: ResourceNotReady describes the dependent resource @@ -4620,6 +5749,18 @@ spec: type: integer phase: type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array replicas: type: integer resourcesNotReady: diff --git a/dockerfiles/mongodb-agent/107.0.1.8507-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.1.8507-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.1.8507-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.1.8507-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.1.8507-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.1.8507-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.1.8507-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.10.8627-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.10.8627-1/ubi/Dockerfile new file mode 100644 index 0000000..9a1459f --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.10.8627-1/ubi/Dockerfile @@ -0,0 +1,60 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi9/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + +RUN mkdir -p /agent \ + && mkdir -p /var/lib/mongodb-mms-automation \ + && mkdir -p /var/log/mongodb-mms-automation/ \ + && chmod -R +wr /var/log/mongodb-mms-automation/ \ + # ensure that the agent user can write the logs in OpenShift + && touch /var/log/mongodb-mms-automation/readiness.log \ + && chmod ugo+rw /var/log/mongodb-mms-automation/readiness.log + + +COPY --from=base /data/mongodb-agent.tar.gz /agent +COPY --from=base /data/mongodb-tools.tgz /agent +COPY --from=base /data/LICENSE /licenses/LICENSE + +RUN tar xfz /agent/mongodb-agent.tar.gz \ + && mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent \ + && chmod +x /agent/mongodb-agent \ + && mkdir -p /var/lib/automation/config \ + && chmod -R +r /var/lib/automation/config \ + && rm /agent/mongodb-agent.tar.gz \ + && rm -r mongodb-mms-automation-agent-* + +RUN tar xfz /agent/mongodb-tools.tgz --directory /var/lib/mongodb-mms-automation/ && rm /agent/mongodb-tools.tgz + +USER 2000 +CMD ["/agent/mongodb-agent", "-cluster=/var/lib/automation/config/automation-config.json"] \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.10.8627-1_1.25.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.10.8627-1_1.25.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.10.8627-1_1.25.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.10.8627-1_1.26.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.10.8627-1_1.26.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.10.8627-1_1.26.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.10.8627-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.10.8627-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.10.8627-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.11.8645-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.11.8645-1/ubi/Dockerfile new file mode 100644 index 0000000..9a1459f --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.11.8645-1/ubi/Dockerfile @@ -0,0 +1,60 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi9/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + +RUN mkdir -p /agent \ + && mkdir -p /var/lib/mongodb-mms-automation \ + && mkdir -p /var/log/mongodb-mms-automation/ \ + && chmod -R +wr /var/log/mongodb-mms-automation/ \ + # ensure that the agent user can write the logs in OpenShift + && touch /var/log/mongodb-mms-automation/readiness.log \ + && chmod ugo+rw /var/log/mongodb-mms-automation/readiness.log + + +COPY --from=base /data/mongodb-agent.tar.gz /agent +COPY --from=base /data/mongodb-tools.tgz /agent +COPY --from=base /data/LICENSE /licenses/LICENSE + +RUN tar xfz /agent/mongodb-agent.tar.gz \ + && mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent \ + && chmod +x /agent/mongodb-agent \ + && mkdir -p /var/lib/automation/config \ + && chmod -R +r /var/lib/automation/config \ + && rm /agent/mongodb-agent.tar.gz \ + && rm -r mongodb-mms-automation-agent-* + +RUN tar xfz /agent/mongodb-tools.tgz --directory /var/lib/mongodb-mms-automation/ && rm /agent/mongodb-tools.tgz + +USER 2000 +CMD ["/agent/mongodb-agent", "-cluster=/var/lib/automation/config/automation-config.json"] \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.11.8645-1_1.25.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.11.8645-1_1.25.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.11.8645-1_1.25.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.11.8645-1_1.26.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.11.8645-1_1.26.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.11.8645-1_1.26.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.11.8645-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.11.8645-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.11.8645-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.2.8531-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.2.8531-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.2.8531-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.2.8531-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.2.8531-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.2.8531-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.2.8531-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.3.8550-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.3.8550-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.3.8550-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.3.8550-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.3.8550-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.3.8550-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.3.8550-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.4.8567-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.4.8567-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.4.8567-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.4.8567-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.4.8567-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.4.8567-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.4.8567-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.6.8587-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.6.8587-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.6.8587-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.6.8587-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.6.8587-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.6.8587-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.6.8587-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.7.8596-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.7.8596-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.7.8596-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.7.8596-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.7.8596-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.7.8596-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.7.8596-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.8.8615-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.8.8615-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.8.8615-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.8.8615-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.8.8615-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.8.8615-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.8.8615-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/107.0.9.8621-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.9.8621-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/107.0.9.8621-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/107.0.9.8621-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/107.0.9.8621-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/107.0.9.8621-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/107.0.9.8621-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/108.0.0.8694-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/108.0.0.8694-1/ubi/Dockerfile new file mode 100644 index 0000000..9a1459f --- /dev/null +++ b/dockerfiles/mongodb-agent/108.0.0.8694-1/ubi/Dockerfile @@ -0,0 +1,60 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi9/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + +RUN mkdir -p /agent \ + && mkdir -p /var/lib/mongodb-mms-automation \ + && mkdir -p /var/log/mongodb-mms-automation/ \ + && chmod -R +wr /var/log/mongodb-mms-automation/ \ + # ensure that the agent user can write the logs in OpenShift + && touch /var/log/mongodb-mms-automation/readiness.log \ + && chmod ugo+rw /var/log/mongodb-mms-automation/readiness.log + + +COPY --from=base /data/mongodb-agent.tar.gz /agent +COPY --from=base /data/mongodb-tools.tgz /agent +COPY --from=base /data/LICENSE /licenses/LICENSE + +RUN tar xfz /agent/mongodb-agent.tar.gz \ + && mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent \ + && chmod +x /agent/mongodb-agent \ + && mkdir -p /var/lib/automation/config \ + && chmod -R +r /var/lib/automation/config \ + && rm /agent/mongodb-agent.tar.gz \ + && rm -r mongodb-mms-automation-agent-* + +RUN tar xfz /agent/mongodb-tools.tgz --directory /var/lib/mongodb-mms-automation/ && rm /agent/mongodb-tools.tgz + +USER 2000 +CMD ["/agent/mongodb-agent", "-cluster=/var/lib/automation/config/automation-config.json"] \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/108.0.0.8694-1_1.25.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/108.0.0.8694-1_1.25.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/108.0.0.8694-1_1.25.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/108.0.0.8694-1_1.26.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/108.0.0.8694-1_1.26.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/108.0.0.8694-1_1.26.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/108.0.0.8694-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/108.0.0.8694-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/108.0.0.8694-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/12.0.29.7785-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.29.7785-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/12.0.29.7785-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/12.0.29.7785-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/12.0.29.7785-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.29.7785-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/12.0.29.7785-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/12.0.30.7791-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.30.7791-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/12.0.30.7791-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/12.0.30.7791-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/12.0.30.7791-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.30.7791-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/12.0.30.7791-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/12.0.31.7825-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.31.7825-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/12.0.31.7825-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/12.0.31.7825-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/12.0.31.7825-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.31.7825-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/12.0.31.7825-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/12.0.32.7857-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.32.7857-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/12.0.32.7857-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/12.0.32.7857-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/12.0.32.7857-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.32.7857-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/12.0.32.7857-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/12.0.33.7866-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.33.7866-1/ubi/Dockerfile index aa1817b..9a1459f 100644 --- a/dockerfiles/mongodb-agent/12.0.33.7866-1/ubi/Dockerfile +++ b/dockerfiles/mongodb-agent/12.0.33.7866-1/ubi/Dockerfile @@ -1,7 +1,7 @@ ARG imagebase FROM ${imagebase} as base -FROM registry.access.redhat.com/ubi8/ubi-minimal +FROM registry.access.redhat.com/ubi9/ubi-minimal ARG version @@ -13,15 +13,22 @@ LABEL name="MongoDB Agent" \ release="1" \ maintainer="support@mongodb.com" +# Replace libcurl-minimal and curl-minimal with the full versions +# https://bugzilla.redhat.com/show_bug.cgi?id=1994521 +RUN microdnf install -y libssh libpsl libbrotli \ + && microdnf download curl libcurl \ + && rpm -Uvh --nodeps --replacefiles "*curl*$( uname -i ).rpm" \ + && microdnf remove -y libcurl-minimal curl-minimal + RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper # Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ -RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ - cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs openldap openssl xz-libs # Dependencies for the Agent RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ net-snmp \ net-snmp-agent-libs -RUN microdnf install -y --disableplugin=subscription-manager curl \ +RUN microdnf install -y --disableplugin=subscription-manager \ hostname tar gzip procps jq \ && microdnf upgrade -y \ && rm -rf /var/lib/apt/lists/* diff --git a/dockerfiles/mongodb-agent/12.0.33.7866-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/12.0.33.7866-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/12.0.33.7866-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/13.22.0.9099-1/ubi/Dockerfile b/dockerfiles/mongodb-agent/13.22.0.9099-1/ubi/Dockerfile new file mode 100644 index 0000000..aa1817b --- /dev/null +++ b/dockerfiles/mongodb-agent/13.22.0.9099-1/ubi/Dockerfile @@ -0,0 +1,53 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + +RUN mkdir -p /agent \ + && mkdir -p /var/lib/mongodb-mms-automation \ + && mkdir -p /var/log/mongodb-mms-automation/ \ + && chmod -R +wr /var/log/mongodb-mms-automation/ \ + # ensure that the agent user can write the logs in OpenShift + && touch /var/log/mongodb-mms-automation/readiness.log \ + && chmod ugo+rw /var/log/mongodb-mms-automation/readiness.log + + +COPY --from=base /data/mongodb-agent.tar.gz /agent +COPY --from=base /data/mongodb-tools.tgz /agent +COPY --from=base /data/LICENSE /licenses/LICENSE + +RUN tar xfz /agent/mongodb-agent.tar.gz \ + && mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent \ + && chmod +x /agent/mongodb-agent \ + && mkdir -p /var/lib/automation/config \ + && chmod -R +r /var/lib/automation/config \ + && rm /agent/mongodb-agent.tar.gz \ + && rm -r mongodb-mms-automation-agent-* + +RUN tar xfz /agent/mongodb-tools.tgz --directory /var/lib/mongodb-mms-automation/ && rm /agent/mongodb-tools.tgz + +USER 2000 +CMD ["/agent/mongodb-agent", "-cluster=/var/lib/automation/config/automation-config.json"] \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/13.22.0.9099-1_1.25.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/13.22.0.9099-1_1.25.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/13.22.0.9099-1_1.25.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/13.22.0.9099-1_1.26.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/13.22.0.9099-1_1.26.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/13.22.0.9099-1_1.26.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-agent/13.22.0.9099-1_1.27.0/ubi/Dockerfile b/dockerfiles/mongodb-agent/13.22.0.9099-1_1.27.0/ubi/Dockerfile new file mode 100644 index 0000000..c89002a --- /dev/null +++ b/dockerfiles/mongodb-agent/13.22.0.9099-1_1.27.0/ubi/Dockerfile @@ -0,0 +1,57 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version + +LABEL name="MongoDB Agent" \ + version="${agent_version}" \ + summary="MongoDB Agent" \ + description="MongoDB Agent" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/probe.sh /opt/scripts/probe.sh +COPY --from=base /data/readinessprobe /opt/scripts/readinessprobe +COPY --from=base /data/version-upgrade-hook /opt/scripts/version-upgrade-hook +COPY --from=base /data/agent-launcher-lib.sh /opt/scripts/agent-launcher-lib.sh +COPY --from=base /data/agent-launcher.sh /opt/scripts/agent-launcher.sh +COPY --from=base /data/LICENSE /LICENSE + +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +# Copy-pasted from https://www.mongodb.com/docs/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain krb5-libs libcurl openldap openssl xz-libs +# Dependencies for the Agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 \ + net-snmp \ + net-snmp-agent-libs +RUN microdnf install -y --disableplugin=subscription-manager curl \ + hostname tar gzip procps jq \ + && microdnf upgrade -y \ + && rm -rf /var/lib/apt/lists/* + + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz +COPY --from=base /data/mongodb_agent_ubi.tgz /agent/mongodb_agent.tgz + +RUN tar xfz /tools/mongodb_tools.tgz +RUN mv mongodb-database-tools-*/bin/* /tools +RUN chmod +x /tools/* +RUN rm /tools/mongodb_tools.tgz +RUN rm -rf /mongodb-database-tools-* + +RUN tar xfz /agent/mongodb_agent.tgz +RUN mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent +RUN chmod +x /agent/mongodb-agent +RUN rm /agent/mongodb_agent.tgz +RUN rm -rf mongodb-mms-automation-agent-* + +RUN mkdir -p /var/lib/automation/config +RUN chmod -R +r /var/lib/automation/config + +USER 2000 + +HEALTHCHECK --timeout=30s CMD ls /opt/scripts/readinessprobe || exit 1 \ No newline at end of file diff --git a/dockerfiles/mongodb-enterprise-database/1.28.0/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-database/1.28.0/ubi/Dockerfile new file mode 100644 index 0000000..be1c7d3 --- /dev/null +++ b/dockerfiles/mongodb-enterprise-database/1.28.0/ubi/Dockerfile @@ -0,0 +1,87 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + + + +LABEL name="MongoDB Enterprise Database" \ + version="1.28.0" \ + summary="MongoDB Enterprise Database Image" \ + description="MongoDB Enterprise Database Image" \ + vendor="MongoDB" \ + release="1" \ + maintainer="support@mongodb.com" + + + + + +ENV MMS_HOME /mongodb-automation +ENV MMS_LOG_DIR /var/log/mongodb-mms-automation + + + +RUN microdnf update -y && rm -rf /var/cache/yum + +# these are the packages needed for the agent +RUN microdnf install -y --disableplugin=subscription-manager --setopt=install_weak_deps=0 nss_wrapper +RUN microdnf install -y --disableplugin=subscription-manager \ + hostname \ + procps + + +# these are the packages needed for MongoDB +# (https://docs.mongodb.com/manual/tutorial/install-mongodb-enterprise-on-red-hat-tarball/ "RHEL/CentOS 8" tab) +RUN microdnf install -y --disableplugin=subscription-manager \ + cyrus-sasl \ + cyrus-sasl-gssapi \ + cyrus-sasl-plain \ + krb5-libs \ + libcurl \ + lm_sensors-libs \ + net-snmp \ + net-snmp-agent-libs \ + openldap \ + openssl \ + jq \ + tar \ + xz-libs \ + findutils + + + +RUN ln -s /usr/lib64/libsasl2.so.3 /usr/lib64/libsasl2.so.2 + + +# Set the required perms +RUN mkdir -p "${MMS_LOG_DIR}" \ + && chmod 0775 "${MMS_LOG_DIR}" \ + && mkdir -p /var/lib/mongodb-mms-automation \ + && chmod 0775 /var/lib/mongodb-mms-automation \ + && mkdir -p /data \ + && chmod 0775 /data \ + && mkdir -p /journal \ + && chmod 0775 /journal \ + && mkdir -p "${MMS_HOME}" \ + && chmod -R 0775 "${MMS_HOME}" + + + + +# USER needs to be set for this image to pass RedHat verification. Some customers have these requirements as well +# It does not matter what number it is, as long as it is set to something. +# However, OpenShift will run the container as a random user, +# and the number in this configuration is not relevant. +USER 2000 + + +# The docker image doesn't have any scripts so by default does nothing +# The script will be copied in runtime from init containers and the operator is expected +# to override the COMMAND +ENTRYPOINT ["sleep infinity"] + + +COPY --from=base /data/licenses/mongodb-enterprise-database /licenses/mongodb-enterprise-database + + diff --git a/dockerfiles/mongodb-enterprise-database/2.0.2/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-database/2.0.2/ubi/Dockerfile index 3454bdc..6318d3c 100644 --- a/dockerfiles/mongodb-enterprise-database/2.0.2/ubi/Dockerfile +++ b/dockerfiles/mongodb-enterprise-database/2.0.2/ubi/Dockerfile @@ -49,6 +49,7 @@ RUN microdnf install -y --disableplugin=subscription-manager \ findutils + RUN ln -s /usr/lib64/libsasl2.so.3 /usr/lib64/libsasl2.so.2 diff --git a/dockerfiles/mongodb-enterprise-init-appdb/1.28.0/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-init-appdb/1.28.0/ubi/Dockerfile new file mode 100644 index 0000000..0495673 --- /dev/null +++ b/dockerfiles/mongodb-enterprise-init-appdb/1.28.0/ubi/Dockerfile @@ -0,0 +1,35 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version +LABEL name="MongoDB Enterprise Init AppDB" \ + version="mongodb-enterprise-init-appdb-${version}" \ + summary="MongoDB Enterprise AppDB Init Image" \ + description="Startup Scripts for MongoDB Enterprise Application Database for Ops Manager" \ + release="1" \ + vendor="MongoDB" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/readinessprobe /probes/readinessprobe +COPY --from=base /data/probe.sh /probes/probe.sh +COPY --from=base /data/scripts/ /scripts/ +COPY --from=base /data/licenses /licenses/ +COPY --from=base /data/version-upgrade-hook /probes/version-upgrade-hook + + +RUN microdnf -y update --nodocs \ + && microdnf -y install --nodocs tar gzip \ + && microdnf clean all + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz + + +RUN tar xfz /tools/mongodb_tools.tgz --directory /tools \ + && rm /tools/mongodb_tools.tgz + +USER 2000 +ENTRYPOINT [ "/bin/cp", "-f", "-r", "/scripts/agent-launcher.sh", "/scripts/agent-launcher-lib.sh", "/probes/readinessprobe", "/probes/probe.sh", "/tools", "/opt/scripts/" ] + + diff --git a/dockerfiles/mongodb-enterprise-init-database/1.28.0/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-init-database/1.28.0/ubi/Dockerfile new file mode 100644 index 0000000..8fefdcc --- /dev/null +++ b/dockerfiles/mongodb-enterprise-init-database/1.28.0/ubi/Dockerfile @@ -0,0 +1,34 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + +ARG version +LABEL name="MongoDB Enterprise Init Database" \ + version="mongodb-enterprise-init-database-${version}" \ + summary="MongoDB Enterprise Database Init Image" \ + description="Startup Scripts for MongoDB Enterprise Database" \ + release="1" \ + vendor="MongoDB" \ + maintainer="support@mongodb.com" + +COPY --from=base /data/readinessprobe /probes/readinessprobe +COPY --from=base /data/probe.sh /probes/probe.sh +COPY --from=base /data/scripts/ /scripts/ +COPY --from=base /data/licenses /licenses/ + + +RUN microdnf -y update --nodocs \ + && microdnf -y install --nodocs tar gzip \ + && microdnf clean all + +COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz + + +RUN tar xfz /tools/mongodb_tools.tgz --directory /tools \ + && rm /tools/mongodb_tools.tgz + +USER 2000 +ENTRYPOINT [ "/bin/cp", "-f", "-r", "/scripts/agent-launcher.sh", "/scripts/agent-launcher-lib.sh", "/probes/readinessprobe", "/probes/probe.sh", "/tools", "/opt/scripts/" ] + + diff --git a/dockerfiles/mongodb-enterprise-init-ops-manager/1.28.0/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-init-ops-manager/1.28.0/ubi/Dockerfile new file mode 100644 index 0000000..083cd66 --- /dev/null +++ b/dockerfiles/mongodb-enterprise-init-ops-manager/1.28.0/ubi/Dockerfile @@ -0,0 +1,26 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi9/ubi-minimal + +LABEL name="MongoDB Enterprise Ops Manager Init" \ + maintainer="support@mongodb.com" \ + vendor="MongoDB" \ + version="mongodb-enterprise-init-ops-manager-1.28.0" \ + release="1" \ + summary="MongoDB Enterprise Ops Manager Init Image" \ + description="Startup Scripts for MongoDB Enterprise Ops Manager" + + +COPY --from=base /data/scripts /scripts +COPY --from=base /data/licenses /licenses + + +RUN microdnf -y update --nodocs \ + && microdnf clean all + + +USER 2000 +ENTRYPOINT [ "/bin/cp", "-f", "/scripts/docker-entry-point.sh", "/scripts/backup-daemon-liveness-probe.sh", "/scripts/mmsconfiguration", "/scripts/backup-daemon-readiness-probe", "/opt/scripts/" ] + + diff --git a/dockerfiles/mongodb-enterprise-operator/1.28.0/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-operator/1.28.0/ubi/Dockerfile new file mode 100644 index 0000000..99c1918 --- /dev/null +++ b/dockerfiles/mongodb-enterprise-operator/1.28.0/ubi/Dockerfile @@ -0,0 +1,39 @@ +# +# Base Template Dockerfile for Operator Image. +# + +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi9/ubi-minimal + + +LABEL name="MongoDB Enterprise Operator" \ + maintainer="support@mongodb.com" \ + vendor="MongoDB" \ + version="1.28.0" \ + release="1" \ + summary="MongoDB Enterprise Operator Image" \ + description="MongoDB Enterprise Operator Image" + + +# Building an UBI-based image: https://red.ht/3n6b9y0 +RUN microdnf update \ + --disableplugin=subscription-manager \ + --disablerepo=* --enablerepo=ubi-9-appstream-rpms --enablerepo=ubi-9-baseos-rpms -y \ + && rm -rf /var/cache/yum + + + + +COPY --from=base /data/mongodb-enterprise-operator /usr/local/bin/mongodb-enterprise-operator +COPY --from=base /data/om_version_mapping.json /usr/local/om_version_mapping.json +COPY --from=base /data/licenses /licenses/ + +USER 2000 + + + +ENTRYPOINT exec /usr/local/bin/mongodb-enterprise-operator + + diff --git a/dockerfiles/mongodb-enterprise-ops-manager/7.0.10/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-ops-manager/7.0.10/ubi/Dockerfile new file mode 100644 index 0000000..65e4ed8 --- /dev/null +++ b/dockerfiles/mongodb-enterprise-ops-manager/7.0.10/ubi/Dockerfile @@ -0,0 +1,77 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + + +LABEL name="MongoDB Enterprise Ops Manager" \ + maintainer="support@mongodb.com" \ + vendor="MongoDB" \ + version="7.0.10" \ + release="1" \ + summary="MongoDB Enterprise Ops Manager Image" \ + description="MongoDB Enterprise Ops Manager" + + +ENV MMS_HOME /mongodb-ops-manager +ENV MMS_PROP_FILE ${MMS_HOME}/conf/conf-mms.properties +ENV MMS_CONF_FILE ${MMS_HOME}/conf/mms.conf +ENV MMS_LOG_DIR ${MMS_HOME}/logs +ENV MMS_TMP_DIR ${MMS_HOME}/tmp + +EXPOSE 8080 + +# OpsManager docker image needs to have the MongoDB dependencies because the +# backup daemon is running its database locally + +RUN microdnf install --disableplugin=subscription-manager -y \ + cyrus-sasl \ + cyrus-sasl-gssapi \ + cyrus-sasl-plain \ + krb5-libs \ + libcurl \ + libpcap \ + lm_sensors-libs \ + net-snmp \ + net-snmp-agent-libs \ + openldap \ + openssl \ + tar \ + rpm-libs \ + net-tools \ + procps-ng \ + ncurses + + +COPY --from=base /data/licenses /licenses/ + +COPY --from=base /data/scripts /opt/scripts + + + +RUN curl --fail -L -o ops_manager.tar.gz https://downloads.mongodb.com/on-prem-mms/tar/mongodb-mms-7.0.10.500.20240731T2149Z.tar.gz \ + && tar -xzf ops_manager.tar.gz \ + && rm ops_manager.tar.gz \ + && mv mongodb-mms* "${MMS_HOME}" + + +# permissions +RUN chmod -R 0777 "${MMS_LOG_DIR}" \ + && chmod -R 0777 "${MMS_TMP_DIR}" \ + && chmod -R 0775 "${MMS_HOME}/conf" \ + && chmod -R 0775 "${MMS_HOME}/jdk" \ + && mkdir "${MMS_HOME}/mongodb-releases/" \ + && chmod -R 0775 "${MMS_HOME}/mongodb-releases" \ + && chmod -R 0777 "${MMS_CONF_FILE}" \ + && chmod -R 0777 "${MMS_PROP_FILE}" + +# The "${MMS_HOME}/conf" will be populated by the docker-entry-point.sh. +# For now we need to move into the templates directory. +RUN cp -r "${MMS_HOME}/conf" "${MMS_HOME}/conf-template" + +USER 2000 + +# operator to change the entrypoint to: /mongodb-ops-manager/bin/mongodb-mms start_mms (or a wrapper around this) +ENTRYPOINT [ "sleep infinity" ] + + diff --git a/dockerfiles/mongodb-enterprise-ops-manager/7.0.11/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-ops-manager/7.0.11/ubi/Dockerfile new file mode 100644 index 0000000..f5fe390 --- /dev/null +++ b/dockerfiles/mongodb-enterprise-ops-manager/7.0.11/ubi/Dockerfile @@ -0,0 +1,77 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + + +LABEL name="MongoDB Enterprise Ops Manager" \ + maintainer="support@mongodb.com" \ + vendor="MongoDB" \ + version="7.0.11" \ + release="1" \ + summary="MongoDB Enterprise Ops Manager Image" \ + description="MongoDB Enterprise Ops Manager" + + +ENV MMS_HOME /mongodb-ops-manager +ENV MMS_PROP_FILE ${MMS_HOME}/conf/conf-mms.properties +ENV MMS_CONF_FILE ${MMS_HOME}/conf/mms.conf +ENV MMS_LOG_DIR ${MMS_HOME}/logs +ENV MMS_TMP_DIR ${MMS_HOME}/tmp + +EXPOSE 8080 + +# OpsManager docker image needs to have the MongoDB dependencies because the +# backup daemon is running its database locally + +RUN microdnf install --disableplugin=subscription-manager -y \ + cyrus-sasl \ + cyrus-sasl-gssapi \ + cyrus-sasl-plain \ + krb5-libs \ + libcurl \ + libpcap \ + lm_sensors-libs \ + net-snmp \ + net-snmp-agent-libs \ + openldap \ + openssl \ + tar \ + rpm-libs \ + net-tools \ + procps-ng \ + ncurses + + +COPY --from=base /data/licenses /licenses/ + +COPY --from=base /data/scripts /opt/scripts + + + +RUN curl --fail -L -o ops_manager.tar.gz https://downloads.mongodb.com/on-prem-mms/tar/mongodb-mms-7.0.11.500.20240830T1718Z.tar.gz \ + && tar -xzf ops_manager.tar.gz \ + && rm ops_manager.tar.gz \ + && mv mongodb-mms* "${MMS_HOME}" + + +# permissions +RUN chmod -R 0777 "${MMS_LOG_DIR}" \ + && chmod -R 0777 "${MMS_TMP_DIR}" \ + && chmod -R 0775 "${MMS_HOME}/conf" \ + && chmod -R 0775 "${MMS_HOME}/jdk" \ + && mkdir "${MMS_HOME}/mongodb-releases/" \ + && chmod -R 0775 "${MMS_HOME}/mongodb-releases" \ + && chmod -R 0777 "${MMS_CONF_FILE}" \ + && chmod -R 0777 "${MMS_PROP_FILE}" + +# The "${MMS_HOME}/conf" will be populated by the docker-entry-point.sh. +# For now we need to move into the templates directory. +RUN cp -r "${MMS_HOME}/conf" "${MMS_HOME}/conf-template" + +USER 2000 + +# operator to change the entrypoint to: /mongodb-ops-manager/bin/mongodb-mms start_mms (or a wrapper around this) +ENTRYPOINT [ "sleep infinity" ] + + diff --git a/dockerfiles/mongodb-enterprise-ops-manager/8.0.0/ubi/Dockerfile b/dockerfiles/mongodb-enterprise-ops-manager/8.0.0/ubi/Dockerfile new file mode 100644 index 0000000..a1b6c7b --- /dev/null +++ b/dockerfiles/mongodb-enterprise-ops-manager/8.0.0/ubi/Dockerfile @@ -0,0 +1,77 @@ +ARG imagebase +FROM ${imagebase} as base + +FROM registry.access.redhat.com/ubi8/ubi-minimal + + +LABEL name="MongoDB Enterprise Ops Manager" \ + maintainer="support@mongodb.com" \ + vendor="MongoDB" \ + version="8.0.0" \ + release="1" \ + summary="MongoDB Enterprise Ops Manager Image" \ + description="MongoDB Enterprise Ops Manager" + + +ENV MMS_HOME /mongodb-ops-manager +ENV MMS_PROP_FILE ${MMS_HOME}/conf/conf-mms.properties +ENV MMS_CONF_FILE ${MMS_HOME}/conf/mms.conf +ENV MMS_LOG_DIR ${MMS_HOME}/logs +ENV MMS_TMP_DIR ${MMS_HOME}/tmp + +EXPOSE 8080 + +# OpsManager docker image needs to have the MongoDB dependencies because the +# backup daemon is running its database locally + +RUN microdnf install --disableplugin=subscription-manager -y \ + cyrus-sasl \ + cyrus-sasl-gssapi \ + cyrus-sasl-plain \ + krb5-libs \ + libcurl \ + libpcap \ + lm_sensors-libs \ + net-snmp \ + net-snmp-agent-libs \ + openldap \ + openssl \ + tar \ + rpm-libs \ + net-tools \ + procps-ng \ + ncurses + + +COPY --from=base /data/licenses /licenses/ + +COPY --from=base /data/scripts /opt/scripts + + + +RUN curl --fail -L -o ops_manager.tar.gz https://s3.amazonaws.com/mongodb-mms-build-onprem/441df54b742c8fd372d91a6dd79b4a42f4d33837/mongodb-mms-8.0.0.500.20240924T1611Z.tar.gz \ + && tar -xzf ops_manager.tar.gz \ + && rm ops_manager.tar.gz \ + && mv mongodb-mms* "${MMS_HOME}" + + +# permissions +RUN chmod -R 0777 "${MMS_LOG_DIR}" \ + && chmod -R 0777 "${MMS_TMP_DIR}" \ + && chmod -R 0775 "${MMS_HOME}/conf" \ + && chmod -R 0775 "${MMS_HOME}/jdk" \ + && mkdir "${MMS_HOME}/mongodb-releases/" \ + && chmod -R 0775 "${MMS_HOME}/mongodb-releases" \ + && chmod -R 0777 "${MMS_CONF_FILE}" \ + && chmod -R 0777 "${MMS_PROP_FILE}" + +# The "${MMS_HOME}/conf" will be populated by the docker-entry-point.sh. +# For now we need to move into the templates directory. +RUN cp -r "${MMS_HOME}/conf" "${MMS_HOME}/conf-template" + +USER 2000 + +# operator to change the entrypoint to: /mongodb-ops-manager/bin/mongodb-mms start_mms (or a wrapper around this) +ENTRYPOINT [ "sleep infinity" ] + + diff --git a/mongodb-enterprise-multi-cluster.yaml b/mongodb-enterprise-multi-cluster.yaml index f002970..7e9b620 100644 --- a/mongodb-enterprise-multi-cluster.yaml +++ b/mongodb-enterprise-multi-cluster.yaml @@ -108,6 +108,18 @@ rules: - mongodbusers/status - opsmanagers/status - mongodbmulticluster/status + + - apiGroups: + - '' + resources: + - persistentvolumeclaims + verbs: + - get + - delete + - list + - watch + - patch + - update --- # Source: enterprise-operator/templates/operator-roles.yaml kind: RoleBinding @@ -215,7 +227,7 @@ spec: runAsUser: 2000 containers: - name: mongodb-enterprise-operator-multi-cluster - image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.27.0" + image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.28.0" imagePullPolicy: Always args: - -watch-resource=mongodb @@ -257,21 +269,21 @@ spec: - name: INIT_DATABASE_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-database-ubi - name: INIT_DATABASE_VERSION - value: 1.27.0 + value: 1.28.0 - name: DATABASE_VERSION - value: 1.27.0 + value: 1.28.0 # Ops Manager - name: OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi - name: INIT_OPS_MANAGER_VERSION - value: 1.27.0 + value: 1.28.0 # AppDB - name: INIT_APPDB_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi - name: INIT_APPDB_VERSION - value: 1.27.0 + value: 1.28.0 - name: OPS_MANAGER_IMAGE_PULL_POLICY value: Always - name: AGENT_IMAGE diff --git a/mongodb-enterprise-openshift.yaml b/mongodb-enterprise-openshift.yaml index eed5aa4..ee92d0d 100644 --- a/mongodb-enterprise-openshift.yaml +++ b/mongodb-enterprise-openshift.yaml @@ -108,6 +108,18 @@ rules: - mongodbusers/status - opsmanagers/status - mongodbmulticluster/status + + - apiGroups: + - '' + resources: + - persistentvolumeclaims + verbs: + - get + - delete + - list + - watch + - patch + - update --- # Source: enterprise-operator/templates/operator-roles.yaml kind: RoleBinding @@ -212,7 +224,7 @@ spec: serviceAccountName: mongodb-enterprise-operator containers: - name: mongodb-enterprise-operator - image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.27.0" + image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.28.0" imagePullPolicy: Always args: - -watch-resource=mongodb @@ -252,21 +264,21 @@ spec: - name: INIT_DATABASE_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-database-ubi - name: INIT_DATABASE_VERSION - value: 1.27.0 + value: 1.28.0 - name: DATABASE_VERSION - value: 1.27.0 + value: 1.28.0 # Ops Manager - name: OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi - name: INIT_OPS_MANAGER_VERSION - value: 1.27.0 + value: 1.28.0 # AppDB - name: INIT_APPDB_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi - name: INIT_APPDB_VERSION - value: 1.27.0 + value: 1.28.0 - name: OPS_MANAGER_IMAGE_PULL_POLICY value: Always - name: AGENT_IMAGE @@ -283,14 +295,14 @@ spec: value: 'true' - name: MDB_MAX_CONCURRENT_RECONCILES value: "1" - - name: RELATED_IMAGE_MONGODB_ENTERPRISE_DATABASE_IMAGE_1_27_0 - value: "quay.io/mongodb/mongodb-enterprise-database-ubi:1.27.0" - - name: RELATED_IMAGE_INIT_DATABASE_IMAGE_REPOSITORY_1_27_0 - value: "quay.io/mongodb/mongodb-enterprise-init-database-ubi:1.27.0" - - name: RELATED_IMAGE_INIT_OPS_MANAGER_IMAGE_REPOSITORY_1_27_0 - value: "quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi:1.27.0" - - name: RELATED_IMAGE_INIT_APPDB_IMAGE_REPOSITORY_1_27_0 - value: "quay.io/mongodb/mongodb-enterprise-init-appdb-ubi:1.27.0" + - name: RELATED_IMAGE_MONGODB_ENTERPRISE_DATABASE_IMAGE_1_28_0 + value: "quay.io/mongodb/mongodb-enterprise-database-ubi:1.28.0" + - name: RELATED_IMAGE_INIT_DATABASE_IMAGE_REPOSITORY_1_28_0 + value: "quay.io/mongodb/mongodb-enterprise-init-database-ubi:1.28.0" + - name: RELATED_IMAGE_INIT_OPS_MANAGER_IMAGE_REPOSITORY_1_28_0 + value: "quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi:1.28.0" + - name: RELATED_IMAGE_INIT_APPDB_IMAGE_REPOSITORY_1_28_0 + value: "quay.io/mongodb/mongodb-enterprise-init-appdb-ubi:1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_0_8465_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.0.8465-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_0_8502_1 @@ -303,6 +315,28 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_1_8507_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_1_8507_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.28.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1_1_25_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.25.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1_1_26_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.26.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1_1_27_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.28.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1_1_25_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.25.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1_1_26_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.26.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1_1_27_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1_1_25_0 @@ -311,6 +345,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1_1_25_0 @@ -319,6 +355,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1_1_25_0 @@ -327,6 +365,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1_1_25_0 @@ -335,6 +375,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1_1_25_0 @@ -343,6 +385,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1_1_25_0 @@ -351,6 +395,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1_1_25_0 @@ -359,6 +405,18 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.28.0" + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1 + value: "quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1" + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1_1_25_0 + value: "quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.25.0" + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1_1_26_0 + value: "quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.26.0" + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1_1_27_0 + value: "quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_28_7763_1 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.28.7763-1" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_29_7785_1 @@ -369,6 +427,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:12.0.29.7785-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_29_7785_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.29.7785-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_29_7785_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:12.0.29.7785-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1_1_25_0 @@ -377,6 +437,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1_1_25_0 @@ -385,6 +447,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1_1_25_0 @@ -393,6 +457,8 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1_1_25_0 @@ -401,16 +467,20 @@ spec: value: "quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.26.0" - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1_1_27_0 value: "quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.28.0" - name: RELATED_IMAGE_AGENT_IMAGE_13_10_0_8620_1 value: "quay.io/mongodb/mongodb-agent-ubi:13.10.0.8620-1" - - name: RELATED_IMAGE_AGENT_IMAGE_13_21_0_9059_1 - value: "quay.io/mongodb/mongodb-agent-ubi:13.21.0.9059-1" - - name: RELATED_IMAGE_AGENT_IMAGE_13_21_0_9059_1_1_25_0 - value: "quay.io/mongodb/mongodb-agent-ubi:13.21.0.9059-1_1.25.0" - - name: RELATED_IMAGE_AGENT_IMAGE_13_21_0_9059_1_1_26_0 - value: "quay.io/mongodb/mongodb-agent-ubi:13.21.0.9059-1_1.26.0" - - name: RELATED_IMAGE_AGENT_IMAGE_13_21_0_9059_1_1_27_0 - value: "quay.io/mongodb/mongodb-agent-ubi:13.21.0.9059-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_13_22_0_9099_1 + value: "quay.io/mongodb/mongodb-agent-ubi:13.22.0.9099-1" + - name: RELATED_IMAGE_AGENT_IMAGE_13_22_0_9099_1_1_25_0 + value: "quay.io/mongodb/mongodb-agent-ubi:13.22.0.9099-1_1.25.0" + - name: RELATED_IMAGE_AGENT_IMAGE_13_22_0_9099_1_1_26_0 + value: "quay.io/mongodb/mongodb-agent-ubi:13.22.0.9099-1_1.26.0" + - name: RELATED_IMAGE_AGENT_IMAGE_13_22_0_9099_1_1_27_0 + value: "quay.io/mongodb/mongodb-agent-ubi:13.22.0.9099-1_1.27.0" + - name: RELATED_IMAGE_AGENT_IMAGE_13_22_0_9099_1_1_28_0 + value: "quay.io/mongodb/mongodb-agent-ubi:13.22.0.9099-1_1.28.0" - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_0 value: "quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.0" - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_1 @@ -481,6 +551,12 @@ spec: value: "quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.8" - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_9 value: "quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.9" + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_10 + value: "quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.10" + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_11 + value: "quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.11" + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_8_0_0 + value: "quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:8.0.0" # since the official server images end with a different suffix we can re-use the same $mongodbImageEnv - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_0_ubi8 value: "quay.io/mongodb/mongodb-enterprise-server:4.4.0-ubi8" diff --git a/mongodb-enterprise.yaml b/mongodb-enterprise.yaml index 77ea498..5fce81d 100644 --- a/mongodb-enterprise.yaml +++ b/mongodb-enterprise.yaml @@ -108,6 +108,18 @@ rules: - mongodbusers/status - opsmanagers/status - mongodbmulticluster/status + + - apiGroups: + - '' + resources: + - persistentvolumeclaims + verbs: + - get + - delete + - list + - watch + - patch + - update --- # Source: enterprise-operator/templates/operator-roles.yaml kind: RoleBinding @@ -215,7 +227,7 @@ spec: runAsUser: 2000 containers: - name: mongodb-enterprise-operator - image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.27.0" + image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.28.0" imagePullPolicy: Always args: - -watch-resource=mongodb @@ -253,21 +265,21 @@ spec: - name: INIT_DATABASE_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-database-ubi - name: INIT_DATABASE_VERSION - value: 1.27.0 + value: 1.28.0 - name: DATABASE_VERSION - value: 1.27.0 + value: 1.28.0 # Ops Manager - name: OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi - name: INIT_OPS_MANAGER_VERSION - value: 1.27.0 + value: 1.28.0 # AppDB - name: INIT_APPDB_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi - name: INIT_APPDB_VERSION - value: 1.27.0 + value: 1.28.0 - name: OPS_MANAGER_IMAGE_PULL_POLICY value: Always - name: AGENT_IMAGE diff --git a/samples/ops-manager-multi-cluster/env_variables.sh b/samples/ops-manager-multi-cluster/env_variables.sh index 2da6bcc..db0d65b 100644 --- a/samples/ops-manager-multi-cluster/env_variables.sh +++ b/samples/ops-manager-multi-cluster/env_variables.sh @@ -48,5 +48,3 @@ export OPS_MANAGER_EXTERNAL_DOMAIN="om-svc.${NAMESPACE}.svc.cluster.local" export OPS_MANAGER_VERSION="7.0.4" export APPDB_VERSION="7.0.9-ubi8" - - diff --git a/samples/ops-manager-multi-cluster/output/0030_verify_access_to_clusters.out b/samples/ops-manager-multi-cluster/output/0030_verify_access_to_clusters.out index 5508665..ebd3914 100644 --- a/samples/ops-manager-multi-cluster/output/0030_verify_access_to_clusters.out +++ b/samples/ops-manager-multi-cluster/output/0030_verify_access_to_clusters.out @@ -1,15 +1,15 @@ Nodes in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0 NAME STATUS ROLES AGE VERSION -gke-k8s-mdb-0-default-pool-679a9e59-43mm Ready 33s v1.29.4-gke.1043004 -gke-k8s-mdb-0-default-pool-679a9e59-cqfm Ready 33s v1.29.4-gke.1043004 -gke-k8s-mdb-0-default-pool-679a9e59-vrt4 Ready 33s v1.29.4-gke.1043004 +gke-k8s-mdb-0-default-pool-267f1e8f-d0dg Ready 38m v1.29.7-gke.1104000 +gke-k8s-mdb-0-default-pool-267f1e8f-pmgh Ready 38m v1.29.7-gke.1104000 +gke-k8s-mdb-0-default-pool-267f1e8f-vgj9 Ready 38m v1.29.7-gke.1104000 Nodes in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1 NAME STATUS ROLES AGE VERSION -gke-k8s-mdb-1-default-pool-277e5173-2nd7 Ready 29s v1.29.4-gke.1043004 -gke-k8s-mdb-1-default-pool-277e5173-73nh Ready 30s v1.29.4-gke.1043004 -gke-k8s-mdb-1-default-pool-277e5173-9pfb Ready 29s v1.29.4-gke.1043004 +gke-k8s-mdb-1-default-pool-263d341f-3tbp Ready 38m v1.29.7-gke.1104000 +gke-k8s-mdb-1-default-pool-263d341f-4f26 Ready 38m v1.29.7-gke.1104000 +gke-k8s-mdb-1-default-pool-263d341f-z751 Ready 38m v1.29.7-gke.1104000 Nodes in cluster gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2 NAME STATUS ROLES AGE VERSION -gke-k8s-mdb-2-default-pool-7611c9f2-5dc8 Ready 60s v1.29.4-gke.1043004 +gke-k8s-mdb-2-default-pool-d0da5fd1-chm1 Ready 38m v1.29.7-gke.1104000 diff --git a/samples/ops-manager-multi-cluster/output/0200_kubectl_mongodb_configure_multi_cluster.out b/samples/ops-manager-multi-cluster/output/0200_kubectl_mongodb_configure_multi_cluster.out index 0055981..1255e7c 100644 --- a/samples/ops-manager-multi-cluster/output/0200_kubectl_mongodb_configure_multi_cluster.out +++ b/samples/ops-manager-multi-cluster/output/0200_kubectl_mongodb_configure_multi_cluster.out @@ -1,5 +1,3 @@ - -Build: 1f23ae48c41d208f14c860356e483ba386a3aab8, 2024-04-26T12:19:36Z Ensured namespaces exist in all clusters. creating central cluster roles in cluster: gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0 creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1 diff --git a/samples/ops-manager-multi-cluster/output/0205_helm_configure_repo.out b/samples/ops-manager-multi-cluster/output/0205_helm_configure_repo.out index 36605e2..b75882a 100644 --- a/samples/ops-manager-multi-cluster/output/0205_helm_configure_repo.out +++ b/samples/ops-manager-multi-cluster/output/0205_helm_configure_repo.out @@ -3,4 +3,4 @@ Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "mongodb" chart repository Update Complete. ⎈Happy Helming!⎈ NAME CHART VERSION APP VERSION DESCRIPTION -mongodb/enterprise-operator 1.26.0 MongoDB Kubernetes Enterprise Operator +mongodb/enterprise-operator 1.27.0 MongoDB Kubernetes Enterprise Operator diff --git a/samples/ops-manager-multi-cluster/output/0210_helm_install_operator.out b/samples/ops-manager-multi-cluster/output/0210_helm_install_operator.out index 1fef256..1f24d1e 100644 --- a/samples/ops-manager-multi-cluster/output/0210_helm_install_operator.out +++ b/samples/ops-manager-multi-cluster/output/0210_helm_install_operator.out @@ -1,6 +1,6 @@ Release "mongodb-enterprise-operator-multi-cluster" does not exist. Installing it now. NAME: mongodb-enterprise-operator-multi-cluster -LAST DEPLOYED: Mon Jul 8 08:59:01 2024 +LAST DEPLOYED: Mon Aug 26 10:55:49 2024 NAMESPACE: mongodb-operator STATUS: deployed REVISION: 1 @@ -26,17 +26,17 @@ agent: version: 107.0.0.8502-1 database: name: mongodb-enterprise-database-ubi - version: 1.26.0 + version: 1.27.0 dummy: value initAppDb: name: mongodb-enterprise-init-appdb-ubi - version: 1.26.0 + version: 1.27.0 initDatabase: name: mongodb-enterprise-init-database-ubi - version: 1.26.0 + version: 1.27.0 initOpsManager: name: mongodb-enterprise-init-ops-manager-ubi - version: 1.26.0 + version: 1.27.0 managedSecurityContext: false mongodb: appdbAssumeOldFormat: false @@ -80,7 +80,7 @@ operator: vaultSecretBackend: enabled: false tlsSecretRef: "" - version: 1.26.0 + version: 1.27.0 watchNamespace: mongodb watchedResources: - mongodb @@ -174,7 +174,7 @@ spec: runAsUser: 2000 containers: - name: mongodb-enterprise-operator-multi-cluster - image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.26.0" + image: "quay.io/mongodb/mongodb-enterprise-operator-ubi:1.27.0" imagePullPolicy: Always args: - -watch-resource=mongodb @@ -214,21 +214,21 @@ spec: - name: INIT_DATABASE_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-database-ubi - name: INIT_DATABASE_VERSION - value: 1.26.0 + value: 1.27.0 - name: DATABASE_VERSION - value: 1.26.0 + value: 1.27.0 # Ops Manager - name: OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi - name: INIT_OPS_MANAGER_VERSION - value: 1.26.0 + value: 1.27.0 # AppDB - name: INIT_APPDB_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi - name: INIT_APPDB_VERSION - value: 1.26.0 + value: 1.27.0 - name: OPS_MANAGER_IMAGE_PULL_POLICY value: Always - name: AGENT_IMAGE diff --git a/samples/ops-manager-multi-cluster/output/0211_check_operator_deployment.out b/samples/ops-manager-multi-cluster/output/0211_check_operator_deployment.out index 73319cc..f02ee0b 100644 --- a/samples/ops-manager-multi-cluster/output/0211_check_operator_deployment.out +++ b/samples/ops-manager-multi-cluster/output/0211_check_operator_deployment.out @@ -2,8 +2,8 @@ Waiting for deployment "mongodb-enterprise-operator-multi-cluster" rollout to fi deployment "mongodb-enterprise-operator-multi-cluster" successfully rolled out Operator deployment in mongodb-operator namespace NAME READY UP-TO-DATE AVAILABLE AGE -mongodb-enterprise-operator-multi-cluster 1/1 1 1 12s +mongodb-enterprise-operator-multi-cluster 1/1 1 1 10s Operator pod in mongodb-operator namespace NAME READY STATUS RESTARTS AGE -mongodb-enterprise-operator-multi-cluster-75d9bd9b8c-xzkvf 2/2 Running 1 (3s ago) 12s +mongodb-enterprise-operator-multi-cluster-54d786b796-7l5ct 2/2 Running 1 (4s ago) 10s diff --git a/samples/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out b/samples/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out index 0cacb70..0b21b28 100644 --- a/samples/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out +++ b/samples/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out @@ -14,13 +14,13 @@ mongodbopsmanager.mongodb.com/om condition met MongoDBOpsManager resource NAME REPLICAS VERSION STATE (OPSMANAGER) STATE (APPDB) STATE (BACKUP) AGE WARNINGS -om 7.0.4 Running Running Disabled 12m +om 7.0.4 Running Running Disabled 13m Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0 NAME READY STATUS RESTARTS AGE -om-0-0 2/2 Running 0 8m56s -om-db-0-0 4/4 Running 0 37s -om-db-0-1 4/4 Running 0 112s -om-db-0-2 4/4 Running 0 3m15s +om-0-0 2/2 Running 0 10m +om-db-0-0 4/4 Running 0 69s +om-db-0-1 4/4 Running 0 2m12s +om-db-0-2 4/4 Running 0 3m32s Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1 diff --git a/samples/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out b/samples/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out index 104cfc6..31f37d9 100644 --- a/samples/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out +++ b/samples/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out @@ -6,17 +6,17 @@ mongodbopsmanager.mongodb.com/om condition met MongoDBOpsManager resource NAME REPLICAS VERSION STATE (OPSMANAGER) STATE (APPDB) STATE (BACKUP) AGE WARNINGS -om 7.0.4 Running Running Disabled 19m +om 7.0.4 Running Running Disabled 20m Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0 NAME READY STATUS RESTARTS AGE -om-0-0 2/2 Running 0 2m54s -om-db-0-0 4/4 Running 0 7m29s -om-db-0-1 4/4 Running 0 8m44s +om-0-0 2/2 Running 0 2m56s +om-db-0-0 4/4 Running 0 7m48s +om-db-0-1 4/4 Running 0 8m51s om-db-0-2 4/4 Running 0 10m Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1 NAME READY STATUS RESTARTS AGE -om-1-0 2/2 Running 0 3m25s -om-db-1-0 4/4 Running 0 6m47s -om-db-1-1 4/4 Running 0 5m1s +om-1-0 2/2 Running 0 3m27s +om-db-1-0 4/4 Running 0 6m32s +om-db-1-1 4/4 Running 0 5m5s diff --git a/samples/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out b/samples/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out index 447cf08..7cf087a 100644 --- a/samples/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out +++ b/samples/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out @@ -13,17 +13,17 @@ om 7.0.4 Running Running Running Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0 NAME READY STATUS RESTARTS AGE -om-0-0 2/2 Running 0 6m14s -om-db-0-0 4/4 Running 0 14m -om-db-0-1 4/4 Running 0 15m -om-db-0-2 4/4 Running 0 17m +om-0-0 2/2 Running 0 5m11s +om-db-0-0 4/4 Running 0 13m +om-db-0-1 4/4 Running 0 14m +om-db-0-2 4/4 Running 0 16m Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1 NAME READY STATUS RESTARTS AGE -om-1-0 2/2 Running 0 6m13s -om-db-1-0 4/4 Running 0 13m -om-db-1-1 4/4 Running 0 12m +om-1-0 2/2 Running 0 5m12s +om-db-1-0 4/4 Running 0 12m +om-db-1-1 4/4 Running 0 11m Pods running in cluster gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2 NAME READY STATUS RESTARTS AGE -om-2-backup-daemon-0 2/2 Running 0 3m28s +om-2-backup-daemon-0 2/2 Running 0 3m8s diff --git a/tools/multicluster/go.mod b/tools/multicluster/go.mod index 3b599a4..eaed638 100644 --- a/tools/multicluster/go.mod +++ b/tools/multicluster/go.mod @@ -2,8 +2,6 @@ module github.com/10gen/ops-manager-kubernetes/multi go 1.22.0 -toolchain go1.22.4 - require ( github.com/ghodss/yaml v1.0.0 github.com/spf13/cobra v1.6.1 diff --git a/tools/multicluster/pkg/common/common.go b/tools/multicluster/pkg/common/common.go index 0603a14..0f27489 100644 --- a/tools/multicluster/pkg/common/common.go +++ b/tools/multicluster/pkg/common/common.go @@ -426,6 +426,11 @@ func getMemberRules() []rbacv1.PolicyRule { Resources: []string{"statefulsets"}, APIGroups: []string{"apps"}, }, + { + Verbs: []string{"get", "list", "create", "update", "watch", "patch"}, + Resources: []string{"persistentvolumeclaims"}, + APIGroups: []string{""}, + }, { Verbs: []string{"get", "list", "watch", "delete", "deletecollection"}, Resources: []string{"pods"},