diff --git a/compose.database.yml b/compose.database.yml index 6aae920..33f3e42 100644 --- a/compose.database.yml +++ b/compose.database.yml @@ -26,19 +26,26 @@ services: - -varz - "http://nats:8222" mongodb: - image: docker.io/bitnamilegacy/mongodb:${MONGODB_VERSION:-6.0} + image: mongodb/mongodb-community-server:${MONGODB_VERSION:-8.2}-ubi8 restart: always volumes: - - ${MONGODB_HOST_PATH:-mongodb_data}:/bitnami/mongodb:rw + - ${MONGODB_HOST_PATH:-mongodb_data}:/data/db:rw environment: - MONGODB_REPLICA_SET_MODE: ${MONGODB_REPLICA_SET_MODE:-primary} MONGODB_REPLICA_SET_NAME: ${MONGODB_REPLICA_SET_NAME:-rs0} MONGODB_PORT_NUMBER: ${MONGODB_PORT_NUMBER:-27017} MONGODB_INITIAL_PRIMARY_HOST: ${MONGODB_INITIAL_PRIMARY_HOST:-mongodb} - MONGODB_INITIAL_PRIMARY_PORT_NUMBER: ${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017} - MONGODB_ADVERTISED_HOSTNAME: ${MONGODB_ADVERTISED_HOSTNAME:-mongodb} - MONGODB_ENABLE_JOURNAL: ${MONGODB_ENABLE_JOURNAL:-true} - ALLOW_EMPTY_PASSWORD: ${ALLOW_EMPTY_PASSWORD:-yes} + entrypoint: | + bash -c + "mongod --replSet $$MONGODB_REPLICA_SET_NAME --bind_ip_all & + sleep 2; + until mongosh --eval \"db.adminCommand('ping')\"; do + echo '=====> Waiting for Mongo...'; + sleep 1; + done; + echo \"=====> Initiating ReplSet $$MONGODB_REPLICA_SET_NAME at $$MONGODB_INITIAL_PRIMARY_HOST:$$MONGODB_PORT_NUMBER...\"; + mongosh --eval \"rs.initiate({_id: '$$MONGODB_REPLICA_SET_NAME', members: [{ _id: 0, host: '$$MONGODB_INITIAL_PRIMARY_HOST:$$MONGODB_PORT_NUMBER' }]})\"; + echo '=====> Initiating ReplSet done...'; + wait" # healthcheck: # test: ["CMD", "mongosh", "--host", "mongodb", "--port", "${MONGODB_PORT_NUMBER:-27017}", "--eval", "db.adminCommand('ping')"] # interval: 30s @@ -49,6 +56,7 @@ services: - ${MONGODB_PORT_NUMBER:-27017} ports: - "${MONGODB_BIND_IP:-127.0.0.1}:${MONGODB_PORT_NUMBER:-27017}:${MONGODB_PORT_NUMBER:-27017}" + mongodb-exporter: image: docker.io/percona/mongodb_exporter:${MONGODB_EXPORTER_VERSION:-0.44.0} depends_on: diff --git a/generated/docker-compose-no-traefik.yml b/generated/docker-compose-no-traefik.yml index 585844d..699d310 100644 --- a/generated/docker-compose-no-traefik.yml +++ b/generated/docker-compose-no-traefik.yml @@ -56,19 +56,26 @@ services: - -varz - "http://nats:8222" mongodb: - image: docker.io/bitnamilegacy/mongodb:${MONGODB_VERSION:-6.0} + image: mongodb/mongodb-community-server:${MONGODB_VERSION:-8.2}-ubi8 restart: always volumes: - - ${MONGODB_HOST_PATH:-mongodb_data}:/bitnami/mongodb:rw + - ${MONGODB_HOST_PATH:-mongodb_data}:/data/db:rw environment: - MONGODB_REPLICA_SET_MODE: ${MONGODB_REPLICA_SET_MODE:-primary} MONGODB_REPLICA_SET_NAME: ${MONGODB_REPLICA_SET_NAME:-rs0} MONGODB_PORT_NUMBER: ${MONGODB_PORT_NUMBER:-27017} MONGODB_INITIAL_PRIMARY_HOST: ${MONGODB_INITIAL_PRIMARY_HOST:-mongodb} - MONGODB_INITIAL_PRIMARY_PORT_NUMBER: ${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017} - MONGODB_ADVERTISED_HOSTNAME: ${MONGODB_ADVERTISED_HOSTNAME:-mongodb} - MONGODB_ENABLE_JOURNAL: ${MONGODB_ENABLE_JOURNAL:-true} - ALLOW_EMPTY_PASSWORD: ${ALLOW_EMPTY_PASSWORD:-yes} + entrypoint: | + bash -c + "mongod --replSet $$MONGODB_REPLICA_SET_NAME --bind_ip_all & + sleep 2; + until mongosh --eval \"db.adminCommand('ping')\"; do + echo '=====> Waiting for Mongo...'; + sleep 1; + done; + echo \"=====> Initiating ReplSet $$MONGODB_REPLICA_SET_NAME at $$MONGODB_INITIAL_PRIMARY_HOST:$$MONGODB_PORT_NUMBER...\"; + mongosh --eval \"rs.initiate({_id: '$$MONGODB_REPLICA_SET_NAME', members: [{ _id: 0, host: '$$MONGODB_INITIAL_PRIMARY_HOST:$$MONGODB_PORT_NUMBER' }]})\"; + echo '=====> Initiating ReplSet done...'; + wait" # healthcheck: # test: ["CMD", "mongosh", "--host", "mongodb", "--port", "${MONGODB_PORT_NUMBER:-27017}", "--eval", "db.adminCommand('ping')"] # interval: 30s @@ -79,6 +86,7 @@ services: - ${MONGODB_PORT_NUMBER:-27017} ports: - "${MONGODB_BIND_IP:-127.0.0.1}:${MONGODB_PORT_NUMBER:-27017}:${MONGODB_PORT_NUMBER:-27017}" + mongodb-exporter: image: docker.io/percona/mongodb_exporter:${MONGODB_EXPORTER_VERSION:-0.44.0} depends_on: diff --git a/generated/docker-compose.yml b/generated/docker-compose.yml index dc14bde..dc51c8c 100644 --- a/generated/docker-compose.yml +++ b/generated/docker-compose.yml @@ -56,19 +56,26 @@ services: - -varz - "http://nats:8222" mongodb: - image: docker.io/bitnamilegacy/mongodb:${MONGODB_VERSION:-6.0} + image: mongodb/mongodb-community-server:${MONGODB_VERSION:-8.2}-ubi8 restart: always volumes: - - ${MONGODB_HOST_PATH:-mongodb_data}:/bitnami/mongodb:rw + - ${MONGODB_HOST_PATH:-mongodb_data}:/data/db:rw environment: - MONGODB_REPLICA_SET_MODE: ${MONGODB_REPLICA_SET_MODE:-primary} MONGODB_REPLICA_SET_NAME: ${MONGODB_REPLICA_SET_NAME:-rs0} MONGODB_PORT_NUMBER: ${MONGODB_PORT_NUMBER:-27017} MONGODB_INITIAL_PRIMARY_HOST: ${MONGODB_INITIAL_PRIMARY_HOST:-mongodb} - MONGODB_INITIAL_PRIMARY_PORT_NUMBER: ${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017} - MONGODB_ADVERTISED_HOSTNAME: ${MONGODB_ADVERTISED_HOSTNAME:-mongodb} - MONGODB_ENABLE_JOURNAL: ${MONGODB_ENABLE_JOURNAL:-true} - ALLOW_EMPTY_PASSWORD: ${ALLOW_EMPTY_PASSWORD:-yes} + entrypoint: | + bash -c + "mongod --replSet $$MONGODB_REPLICA_SET_NAME --bind_ip_all & + sleep 2; + until mongosh --eval \"db.adminCommand('ping')\"; do + echo '=====> Waiting for Mongo...'; + sleep 1; + done; + echo \"=====> Initiating ReplSet $$MONGODB_REPLICA_SET_NAME at $$MONGODB_INITIAL_PRIMARY_HOST:$$MONGODB_PORT_NUMBER...\"; + mongosh --eval \"rs.initiate({_id: '$$MONGODB_REPLICA_SET_NAME', members: [{ _id: 0, host: '$$MONGODB_INITIAL_PRIMARY_HOST:$$MONGODB_PORT_NUMBER' }]})\"; + echo '=====> Initiating ReplSet done...'; + wait" # healthcheck: # test: ["CMD", "mongosh", "--host", "mongodb", "--port", "${MONGODB_PORT_NUMBER:-27017}", "--eval", "db.adminCommand('ping')"] # interval: 30s @@ -79,6 +86,7 @@ services: - ${MONGODB_PORT_NUMBER:-27017} ports: - "${MONGODB_BIND_IP:-127.0.0.1}:${MONGODB_PORT_NUMBER:-27017}:${MONGODB_PORT_NUMBER:-27017}" + mongodb-exporter: image: docker.io/percona/mongodb_exporter:${MONGODB_EXPORTER_VERSION:-0.44.0} depends_on: