# keeper/guacamole-db-postgres

**イメージ:** `keeper/guacamole-db-postgres`

`keeper/guacamole-db-postgres`は、PostgreSQLをDocker化してデプロイしたもので、[Dockerの公式PostgreSQLイメージ](https://hub.docker.com/_/postgres)を基に構築されており、Apache Guacamoleデータベーススキーマで自動的に初期化されます。Keeper Connection Managerに含まれるパッケージを使用して構築され、同じ[EULA](https://www.keepersecurity.com/en_GB/termsofuse.html?t=v)で利用できるようになっています。通常は、[`keeper/guacamole`](/keeper-connection-manager/jp/installation/docker-compose-install/keeper-guacamole.md)イメージを使用して、コンテナ用のPostgreSQLデータベースを作成するために使用します。

### 環境変数 <a href="#id-.glyptodon-guacamoledbpostgresv1.x-environmentvariables" id="id-.glyptodon-guacamoledbpostgresv1.x-environmentvariables"></a>

公式のPostgreSQLイメージがベースのため、以下に記載した環境変数に加えて、[公式のDocker PostgreSQLイメージ](http://confluence.glyptodon.com/_/postgres)でサポートされているすべての環境変数が利用できます。

#### `ACCEPT_EULA` <a href="#id-.glyptodon-guacamoledbpostgresv1.x-accept_eula" id="id-.glyptodon-guacamoledbpostgresv1.x-accept_eula"></a>

環境変数`ACCEPT_EULA`は「Y」に設定して、[Keeper Connection ManagerのEULA](https://www.keepersecurity.com/en_GB/termsofuse.html?t=v)に同意したことを示す必要があります。このDockerイメージは、EULAの条件に従わないと使用できません。

#### `POSTGRES_PASSWORD` <a href="#id-.glyptodon-guacamoledbpostgresv1.x-guacamole_database" id="id-.glyptodon-guacamoledbpostgresv1.x-guacamole_database"></a>

PostgreSQL管理者パスワード。

#### `GUACAMOLE_DATABASE` <a href="#id-.glyptodon-guacamoledbpostgresv1.x-guacamole_database" id="id-.glyptodon-guacamoledbpostgresv1.x-guacamole_database"></a>

Apache Guacamoleで使用するために作成および初期化されたデータベースの名前。この環境変数は、最終的には公式のPostgreSQLイメージの`POSTGRES_DB`環境変数にマッピングされます。省略した場合、公式のPostgreSQLイメージで定義されたデフォルト値が使用されます。

`GUACAMOLE_DATABASE`変数は、他のGuacamole固有の変数と整合性を保つためにここで設定しますが、`POSTGRES_DB`が設定されている場合は省略できます。

#### `GUACAMOLE_ADMIN_PASSWORD` <a href="#id-.glyptodon-guacamoledbmysqlv1.x-guacamole_usernameandguacamole_password" id="id-.glyptodon-guacamoledbmysqlv1.x-guacamole_usernameandguacamole_password"></a>

これは、`guacadmin`ユーザーの管理者パスワードです。

#### `GUACAMOLE_USERNAME`および`GUACAMOLE_PASSWORD` <a href="#id-.glyptodon-guacamoledbpostgresv1.x-guacamole_usernameandguacamole_password" id="id-.glyptodon-guacamoledbpostgresv1.x-guacamole_usernameandguacamole_password"></a>

Guacamoleウェブアプリケーションに固有のPostgreSQLデータベースユーザーに使用するユーザー名とパスワード。この変数のペアは、[公式のPostgreSQLイメージ](http://confluence.glyptodon.com/_/postgres)に含まれる`POSTGRES_USER`環境変数および`POSTGRES_PASSWORD`環境変数とは異なり、作成されたユーザーの権限は制限されており、Guacamoleを実行するためにどうしても必要な権限のみが付与されます。

`GUACAMOLE_USERNAME`と`GUACAMOLE_PASSWORD`は、`POSTGRES_USER`と`POSTGRES_PASSWORD`で作成されたユーザーを代わりに使用できるため、厳密には必要ありませんが、[最小権限の原則](https://en.wikipedia.org/wiki/Principle_of_least_privilege)に従っていることを保証するために**強く推奨**されます。

### Dockerシークレット <a href="#id-.glyptodon-guacamoledbpostgresv1.x-dockersecrets" id="id-.glyptodon-guacamoledbpostgresv1.x-dockersecrets"></a>

環境変数でデータを直接渡すのではなく、このイメージでサポートされている任意の環境変数に`_FILE`サフィックスを付加して、コンテナ内の指定されたファイルからその変数を強制的に読み込ませることができます。Dockerシークレットは機密データをコンテナ内の`/run/secrets/`配下のファイルに格納するため、これを使用して機密データをDockerシークレットから読み込めます。

たとえば、Guacamoleウェブアプリケーション固有の、権限が制限されたユーザーのユーザー名とパスワードをDockerシークレットから読み込む手順は以下のとおりです。

```
docker run --name some-guacamole-db \
    -e ACCEPT_EULA=Y \
    -e GUACAMOLE_DATABASE=guacamole_db \
    -e POSTGRES_PASSWORD=some_password \
    -e GUACAMOLE_ADMIN_PASSWORD=some_password \
    -e GUACAMOLE_USERNAME_FILE=/run/secrets/postgres-username \
    -e GUACAMOLE_PASSWORD_FILE=/run/secrets/postgres-password \
    -d keeper/guacamole-db-postgres
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.keeper.io/keeper-connection-manager/jp/installation/docker-compose-install/database-images/keeper-guacamole-db-postgres.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
