keeper/guacd

Keeper Connection Managerを使用したDockerによるguacdのデプロイ

イメージ: keeper/guacd

keeper/guacdは、Apache GuacamoleプロキシデーモンであるguacdをDocker化してデプロイしたもので、VNC、RDP、SSH、K8s、MySQL、PostgreSQL、SQL Server、telnetをサポートしています。通常は、keeper/guacamoleイメージを使用して、コンテナ用のguacdインスタンスを作成するために使用します。

guacdインスタンスを起動

TCPポート4822で待ち受けるguacdインスタンスを起動するには、以下を実行します。

docker run--name some-guacd-e ACCEPT_EULA=Y-d keeper/guacd

some-guacdはコンテナに割り当てる名前となります。

guacdのログを閲覧

guacdによってプロトコル固有の通信が処理されるため、リモートデスクトップの予期しない動作や接続の失敗をデバッグするにはguacdのログが役立ちます。guacdのログを閲覧するには以下を実行します。

docker logs some-guacd

デフォルトでは、これらのログには「info」レベル以上のメッセージのみが表示されます。このレベルは、コンテナの作成時にLOG_LEVEL環境変数を使用することで上書きできます。

環境変数

ACCEPT_EULA

環境変数ACCEPT_EULAは「Y」に設定して、KeeperコネクションマネージャーのEULAに同意したことを示す必要があります。このDockerイメージは、EULAの規約に従わない限り使用できません。

CA_CERTIFICATES

この変数は任意であり、内部証明機関 (CA) が使用する 1つ以上の証明書の内容をPEM形式で指定します。指定すると、RDPサーバーへの接続やSSL/TLSを使用するリモートブラウザ分離セッションなど、他のサーバーへの SSL/TLS 接続がこれらの証明書に対して検証されます。

以下は、2つの証明書を含むdocker-compose.ymlguacd部分の例となります。

    guacd:
        image: keeper/guacd:2
        restart: unless-stopped
        shm_size: 1001500k
        security_opt:
            - "seccomp:/etc/kcm-setup/guacd-docker-seccomp.json"
        environment:
            ACCEPT_EULA: "Y"
            CA_CERTIFICATES: |
              -----BEGIN CERTIFICATE-----
              MIIEczCCA1ugAwIBAgIBADANBgkqhkiG9w0BAQQFAD..AkGA1UEBhMCR0Ix
              EzARBgNVBAgTClNvbWUtU3RhdGUxFDASBgNVBAoTC0..0EgTHRkMTcwNQYD
              VQQLEy5DbGFzcyAxIFB1YmxpYyBQcmltYXJ5IENlcn..XRpb24gQXV0aG9y
              aXR5MRQwEgYDVQQDEwtCZXN0IENBIEx0ZDAeFw0wMD..TUwMTZaFw0wMTAy
              -----END CERTIFICATE-----
              -----BEGIN CERTIFICATE-----
              MIIEczCCA1ugAwIBAgIBADANBgkqhkiG9w0BAQQFAD..AkGA1UEBhMCR0Ix
              EzARBgNVBAgTClNvbWUtU3RhdGUxFDASBgNVBAoTC0..0EgTHRkMTcwNQYD
              VQQLEy5DbGFzcyAxIFB1YmxpYyBQcmltYXJ5IENlcn..XRpb24gQXV0aG9y
              aXR5MRQwEgYDVQQDEwtCZXN0IENBIEx0ZDAeFw0wMD..TUwMTZaFw0wMTAy
              -----END CERTIFICATE-----
        volumes:
            - "common-storage:/var/lib/guacamole:rw"

GUACD_UID

この変数は任意であり、guacdサービスを実行するユーザーに割り当てるUIDの数字を指定します。省略した場合、guacd用のKeeperコネクションマネージャーパッケージによってguacd用に作成された制限のある権限を持つユーザーのUIDでguacdサービスが実行されます。

主にguacdが、ファイルのアクセス許可がkeeper/guacdのDockerイメージと一致しない可能性のあるボリュームマウントに書き込む必要がある場合に有効となります。

GUACD_GID

この変数は任意であり、guacdサービスを実行するグループに割り当てるGIDの数字を指定します。省略した場合、guacd用のKeeperコネクションマネージャーパッケージによってguacd用に作成された制限のある権限を持つグループのGIDでguacdサービスが実行されます。

主にguacdが、ファイルのアクセス許可がkeeper/guacdのDockerイメージと一致しない可能性のあるボリュームマウントに書き込む必要がある場合に有効となります。

LOG_LEVEL

この変数は任意であり、表示されるログメッセージの最低レベルを指定します。有効な値は、詳細度が増す順に「error」、「warning」、「info」、「debug」、「trace」となります。

デフォルトのログレベルは、「info」となります。

Last updated