3.5.2. Docker コンテナー環境ゲートウェイの実行

Docker コンテナー環境ゲートウェイを実行するには、以下の手順を実施します。

手順

  1. Docker デーモンを開始します。

    sudo systemctl start docker.service
  2. Docker デーモンが実行されているか確認します。

    sudo systemctl status docker.service

Red Hat レジストリーから、そのまま使用できる Docker コンテナーエンジンのイメージをダウンロードできます。

+

sudo docker pull registry.redhat.io/3scale-amp2/apicast-gateway-rhel8:3scale2.10
  1. Docker コンテナーエンジンで APIcast を実行します。

    sudo docker run --name apicast --rm -p 8080:8080 -e THREESCALE_PORTAL_ENDPOINT=https://<access_token>@<domain>-admin.3scale.net registry.redhat.io/3scale-amp2/apicast-gateway-rhel8:3scale2.10

    ここで、<access_token> は 3scale Account Management API のアクセストークンに置き換えます。アクセストークンの代わりにプロバイダーキーを使用することもできます。<domain>-admin.3scale.net は 3scale 管理ポータルの URL です。

このコマンドは、apicastという Docker コンテナーエンジンをポート 8080 で実行し、3scale 管理ポータルから JSON 設定ファイルを取得します。その他の設定オプションについては、APIcast のインストール を参照してください。

3.5.2.1. docker コマンドのオプション

docker run コマンドでは、以下のオプションを使用できます。

  • --rm: 終了時にコンテナーを自動的に削除します。
  • -d または --detach: コンテナーをバックグラウンドで実行し、コンテナー ID を出力します。このオプションを指定しないと、コンテナーはフォアグラウンドモードで実行され、CTRL+c を使用して停止することができます。デタッチモードで起動された場合、docker attach コマンド (例: docker attach apicast) を使用するとコンテナーに再アタッチすることができます。
  • -p または --publish: コンテナーのポートをホストに公開します。値の書式は <host port="">:<container port=""> とする必要があります。したがって、-p 80:8080 の場合は、コンテナーのポート 8080 をホストマシンのポート 80 にバインドします。たとえば、Management API はポート 8090 を使用するため、-p 8090:8090docker run コマンドに追加してこのポートを公開します。
  • -e または --env: 環境変数を設定します。
  • -v または --volume: ボリュームをマウントします。値は通常 <host path="">:<container path="">[:<options>] で表されます。<options> はオプションの属性で、ボリュームを読み取り専用に指定するには、:ro に設定します (デフォルトでは読み取り/書き込みモードでマウントされます)。たとえば、-v /host/path:/container/path:ro と設定します。