Linux 用の MID Server Docker イメージのビルド
提供されたレシピを使用して Docker イメージを作成し、コンテナ化された MID サーバーを Linux に展開します。コンテナ化された MID サーバーは、MID サーバーの Docker イメージを使用して、MID サーバーを大規模に迅速に展開できるようにします。
始める前に
必要なロール:admin
![]() |
必須条件:
ホストは Docker エンジンとコマンドラインインターフェイス(CLI)20.10.4 以降を使用する必要があります。
ライブラリを利用可能な最新バージョンに更新するか、少なくともセキュリティ修正を適用した最新バージョンに更新します。特定された問題が推移的な依存関係の一部である場合は、新しい推移的なバージョンを含む依存ライブラリのバージョンを探します。依存ライブラリをアップグレードしても推移的な依存関係をアップグレードできない場合は、依存関係を除外し、セキュアなバージョンを直接含めることを検討してください。
手順
次のタスク
$ docker rmi $(docker images --filter "dangling=true" -q --no-trunc)docker image ls が次のようになる場合があります。REPOSITORY TAG IMAGE ID CREATED SIZE
mid trackdiscocopper-10-09-2020_10-14-2021_2200 4542b6ab34af 21 seconds ago 1.01GB
<none> <none> 1cdae087a970 About a minute ago 1.38GB
docker image ls は次のようになります。REPOSITORY TAG IMAGE ID CREATED SIZE
mid trackdiscocopper-10-09-2020_10-14-2021_2200 4542b6ab34af About a minute ago 1.01GB
コンテナ化された MID サーバーの起動
コンテナ化された MID サーバーは、MID サーバーの Docker イメージを使用して、MID サーバーを大規模に迅速に展開できるようにします。MID サーバーは、Docker Swarm などのオーケストレーションツールを使用して展開されます。
始める前に
必要なロール:admin
必須条件:
Linux ホストでは、AlmaLinux ディストリビューション 64 ビットアーキテクチャを使用する必要があり、AlmaLinux ディストリビューションをお勧めします。
ホストは Docker エンジンとコマンドラインインターフェイス(CLI)20.10.4 以降を使用する必要があります。
注:docker version コマンドをアドミニストレーターとして実行して、docker の可用性を確認します。詳細については、docker version コマンドのドキュメント を参照してください。
手順
Docker シークレットを使用して、コンテナ化された MID サーバーに機密データを渡す
環境変数またはシークレットファイルを介して渡された構成パラメーターを使用してコンテナ化された MID サーバーを構成できます。
始める前に
必要なロール:Docker Swarm アドミン
このタスクについて
Docker シークレットを使用すると、パスワードや証明書などの機密データをコンテナ化された MID サーバーに渡すことができます。この手順を使用する前に、Docker Swarm をセットアップして起動してください。
展開を作成するときは、レプリカが 1 に保たれていることを確認してください。
手順
Docker シークレットを使用して、コンテナ化された相互認証済みの MID サーバーに機密データを渡す
環境変数またはシークレットファイルを介して渡された設定パラメーターを使用してコンテナ化された MID サーバーを構成できます。
始める前に
必要なロール:admin
必要なロール:Docker Swarm アドミン
このタスクについて
証明書ベースの認証がインスタンスで有効になっている場合は、相互認証クライアント証明書 (PEMファイル) を使用して自動検証する ように MID サーバーを構成できます。これは、コンテナ内の PEM 証明書ファイルへの完全パスを MID_MUTUAL_AUTH_PEM_FILE 環境変数で設定することで実行できます。たとえば、mid.env ファイルで変数を MID_MUTUAL_AUTH_PEM_FILE= /run/secrets/certificate.pem に更新できます。
Docker または Kubernetes シークレットを使用して、PEM 証明書ファイルをコンテナに渡すことができます。以下は、PEM 証明書ファイルをコンテナに渡すコマンドの例です。docker service create --name mid-service --secret mid-secrets.properties --secret <certificate-secret-name> --env-file mid.env <docker-tag or image-id>
相互 PEM 証明書は、初期化中に MID サーバーにインストールされます。その後、MID サーバーはインスタンスに接続し、自動検証します。相互認証が正常に有効になっている状態で MID サーバーがインスタンスに接続すると、MID エージェントのログに次のようなエントリーが記録されることがあります。
- カスタム証明書を MID キーストアにインストールしました
- 相互認証を使用するように構成された MID
手順
Kubernetes シークレットを使用して、コンテナ化された MID サーバーに機密データを渡す
環境変数またはシークレットファイルを介して渡された設定パラメーターを使用してコンテナ化された MID サーバーを構成できます。
始める前に
必要なロール:Kubernetes アドミン
この手順を使用する前に、Kubernertes クラスターをセットアップして起動してください。Kubernetes シークレットの詳細については、「Kubernertes シークレットのドキュメント」を参照してください。
展開を作成するときは、レプリカが 1 に保たれていることを確認してください。
手順
Kubernetes シークレットを使用して、コンテナ化された相互認証済みの MID サーバーに機密データを渡す
環境変数またはシークレットファイルを介して渡された設定パラメーターを使用してコンテナ化された MID サーバーを構成できます。
始める前に
必要なロール:Kubernetes admin
必須条件:
証明書ベースの認証がインスタンスで有効になっている場合は、相互認証クライアント証明書 (PEMファイル) を使用して自動検証する ように MID サーバーを構成できます。これは、コンテナ内の PEM 証明書ファイルへの完全パスを MID_MUTUAL_AUTH_PEM_FILE 環境変数で設定することで実行できます。Kubernetes シークレットを使用して、PEM 証明書ファイルをコンテナに渡すことができます。
相互 PEM 証明書は、初期化中に MID サーバーにインストールされます。その後、MID サーバーはインスタンスに接続し、自動検証します。相互認証が正常に有効になっている状態で MID サーバーがインスタンスに接続すると、MID エージェントのログに次のようなエントリーが記録されることがあります。
- カスタム証明書を MID キーストアにインストールしました
- 相互認証を使用するように構成された MID
