For AI agents: the complete documentation index is available at /resource/ucidm/docs/on-premise/1.9.0/llms.txt, the full documentation bundle is available at /resource/ucidm/docs/on-premise/1.9.0/llms-full.txt, and this page is available as Markdown at /resource/ucidm/docs/on-premise/1.9.0/configuration/mongodb.md.

MongoDB

UCIDM はデータベースとして MongoDB を使ってユーザやグループの情報、外部連携のために必要な情報、ID 連携の履歴情報、アカウント管理の情報などを格納します。

Docker Compose の設定

MongoDB はコンテナとして稼働させます。次のように compose.yml に設定します。任意で設定している項目の値はサンプルです。お客様の環境にあわせて値を変更してください。

  mongo:
    container_name: mongo
    image: docker.io/osstech/mongodb:8.2.4
    logging: *default-logging
    volumes:
      - type: bind
        source: ./mongodb/db
        target: /data/db
        bind:
          create_host_path: true
    environment:
      TZ: "${TZ}"
      MONGODB_ROOT_USER: "${MONGO_USER}"
      MONGODB_ROOT_PASSWORD: "${MONGO_PASSWORD}"
      MONGODB_PORT_NUMBER: "27017"
      MONGODB_ADVERTISED_HOSTNAME: "${MONGO_HOSTNAME}"
      MONGODB_REPLICA_SET_NAME: "${MONGO_REPLICA_SET}"
      MONGODB_REPLICA_SET_KEY: "my/replication/common/key123"
    hostname: "${MONGO_HOSTNAME}"
    restart: "always"
    healthcheck:
      test: mongosh "mongodb://localhost:27017/test?directConnection=false&replicaSet=${MONGO_REPLICA_SET}" --eval 'db.runCommand("ping").ok' --quiet
      interval: 60s
      timeout: 5s
      retries: 3
      start_period: 30s
      start_interval: 3s

ここで参照する環境変数は .env に設定します。

環境変数の設定

環境変数値既定値説明
TZ任意--タイムゾーン情報
MONGODB_ROOT_USER任意--MongoDB の root ユーザー名
MONGODB_ROOT_PASSWORD任意--MongoDB の root ユーザーのパスワード
MONGODB_PORT_NUMBER任意27017MongoDB に接続するポート番号
MONGODB_ADVERTISED_HOSTNAME任意--レプリカセットが使うホスト名
MONGODB_REPLICA_SET_NAME任意--レプリカセットの名前
MONGODB_REPLICA_SET_KEY任意--レプリカセットの認証のための共通鍵

MongoDB の レプリカセット 設定が必須となります。