KongGateway

Kong Gateway 3.4.0 の取得と Docker Compose 設定ガイド

ⓘ本ページはプロモーションが含まれています

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


スポンサードリンク

1. Kong の公式 Docker イメージ取得方法

Kong の公式イメージは Docker Hub に公開されており、最新版タグを指定して docker pull するだけで安全に取得できます。ここでは 「どこで最新バージョンを確認できるか」「取得後にどのように情報を確認すればよいか」 を解説します。

1‑1. 最新版タグの確認方法

公式リポジトリの Tags ページ(https://hub.docker.com/r/kong/kong/tags)にアクセスすると、リリース済みの全バージョンが一覧表示されます。
- 安定版latest またはメジャー・マイナーバージョン(例: 3.3.x)のタグが付与されています。
- リリースノートは Kong の公式サイト(https://docs.konghq.com/release-notes/)で確認でき、取得するバージョンの互換性や既知の問題を事前に把握できます。

ポイント:将来のリリース予測は記載せず、必ず公式情報から現在の安定版を参照してください。

1‑2. イメージ取得手順

<stable-tag> の部分は上記 Tags ページで確認したものに置き換えてください。latest タグを利用すると常に最新の安定版が取得できますが、運用環境では明示的なバージョン指定(例: 3.3.2)を推奨します。

1‑3. イメージ情報の確認方法

取得したイメージは次のコマンドで概要を把握できます。具体的なサイズや対応アーキテクチャは環境に依存するため、実行時に確認してください。

  • サイズdocker images の出力列に表示されます。
  • プラットフォームlinux/amd64, linux/arm64 等)は docker inspectArchitecture フィールドで確認できます。

2. Docker と Docker Compose のインストール要件

Kong をコンテナ上で動作させるには Docker EngineDocker Compose (v2 系) が必須です。本節では、2026 年時点で推奨されている OS・バージョン情報と、主要プラットフォーム別のインストール手順をまとめます。

2‑1. 推奨 OS とソフトウェアバージョン

項目 最低要件 (2026‑06‑18) 補足
Docker Engine 20.10 以上(公式 Docker Desktop または CE/EE) cgroup v2 完全対応により、Kong のリソース制限が正しく機能します。
Docker Compose v2.20 以上(CLI プラグイン形式) docker compose コマンドで統一的に利用可能です。
OS Linux (Ubuntu 22.04 LTS、Debian 12、RHEL 9 など) / macOS Ventura 13.x / Windows 11 (WSL2 推奨) 各 OS の公式 Docker ドキュメントを参照してください。

最新のインストール手順は次のリンクから取得できます(閲覧日: 2026‑06‑18)。

2‑2. Ubuntu 22.04 におけるインストール例

以下は Ubuntu 系ディストリビューションでの Docker CECompose v2 のインストール手順です。スクリプト実行前に sudo 権限が必要です。

macOS と Windows は Docker Desktop をインストールすれば、上記要件が自動で満たされます。公式サイトのダウンロードページから最新版を取得してください。


3. DB‑less モードとデータベースモードの比較・選択基準

Kong は DB‑less(宣言的設定のみ) と データベースモード(外部 PostgreSQL / MySQL を使用)の二つの運用形態を提供します。どちらが自分のユースケースに適しているか判断できるよう、特徴・メリット・注意点を整理しました。

3‑1. DB‑less の特徴

DB‑less は KONG_DECLARATIVE_CONFIG に指定した YAML ファイルだけで全設定を完結させます。以下のポイントが主な利点です。

  • インフラコスト削減:データベースサーバーが不要なので、リソース使用量と運用負荷が最小化されます。
  • GitOps フレンドリー:設定ファイルを Git 管理すれば、CI/CD パイプラインで自動的に反映可能です。
  • 高速起動:コンテナ起動時に YAML をロードするだけなので、再デプロイが速いです。

一方、リアルタイムの設定変更 はファイルを書き換えてコンテナを再起動する必要があります。

3‑2. データベースモードとの比較表

項目 DB‑less データベースモード
永続化先 YAML ファイル (KONG_DECLARATIVE_CONFIG) PostgreSQL / MySQL のテーブル
スケールアウト コンテナ数増加で水平拡張可 (設定ファイル共有が前提) DB クラスタのスケーリングが必要
ランタイム変更 再起動で即反映 Admin API から即時適用可能(再ロード不要)
高可用性 ファイル同期 (GitOps, rsync 等) に依存 DB のレプリケーション・フェイルオーバーで実装
運用コスト 低(DB 管理不要) 中〜高(バックアップ、監視が必要)
適したユースケース 開発/テスト、小規模本番、エッジデプロイ 大規模トラフィック、マルチリージョン構成

3‑3. 選択基準のチェックリスト

  1. 設定変更頻度が高く、リアルタイムで反映したい → データベースモード。
  2. インフラコストや運用負荷を最小化したい → DB‑less。
  3. マイクロサービスのゲートウェイとして短時間に多数デプロイする場合 → DB‑less + GitOps が有効。
  4. 高可用性とデータ永続性が必須(例: 金融系) → データベースモードで外部 DB の冗長構成を採用。

4. Docker Compose で構築する Kong 環境(ハンズオン)

ここでは DB‑less 構成の Kong を Docker Compose で手軽に立ち上げる手順をご紹介します。設定ファイルの意味や起動後の確認ポイントも合わせて解説します。

4‑1. docker-compose.yml の全体像とポイント

以下は最小構成の例です。コメントで各項目の役割を補足しています。

  • KONG_DATABASE=off が DB‑less のスイッチです。
  • KONG_DECLARATIVE_CONFIG にマウントした YAML を指定することで、コンテナ起動時に設定が自動ロードされます。
  • ログは標準出力へリダイレクトしているため、Docker のログドライバで取得しやすくなります。

4‑2. 起動手順と正常性の確認

  1. 上記内容を docker-compose.yml としてプロジェクトディレクトリに保存します。
  2. 同じディレクトリに kong.yml(宣言的設定)を作成します(例は次節で紹介)。
  3. コンテナを起動:

bash
docker compose up -d

  1. 起動状態の確認:

bash
docker ps --filter "name=kong-gateway"

  1. Admin API が応答すれば成功です。以下の curl コマンドでヘルスチェックを実行します。

bash
curl -s -o /dev/null -w "%{http_code}\n" http://localhost:8001/
# 200 が返ってくることが期待値

  1. 宣言的設定が正しく反映されているか、サービス一覧を取得して確認します。

bash
curl http://localhost:8001/services | jq .

4‑3. kong.yml(宣言的設定)のサンプル

このファイルを kong.yml として保存し、Compose 起動後にコンテナを再起動すればプラグインが即座に有効になります。


5. プラグイン有効化・本番向けセキュリティ設定とトラブルシューティング

Kong の基本デプロイが完了したら、実運用で必要になる プラグイン管理TLS 設定ログローテーション、そして よくあるエラーへの対処法 をまとめます。

5‑1. プラグインの宣言的有効化

DB‑less 環境では kong.yml にプラグイン情報を記述するだけで自動適用されます。以下は Rate LimitingCORS の設定例です。

変更後はコンテナを再起動(docker compose restart kong)するだけで反映されます。

5‑2. TLS(HTTPS)設定例

本番環境では Admin APIProxy の両方に TLS を適用し、通信の暗号化を徹底します。証明書は Let’s Encrypt や社内 PKI で取得したものをホスト側に配置し、ボリュームマウントでコンテナに渡します。

ポイント

  • KONG_PROXY_LISTENKONG_ADMIN_LISTENssl オプションを付与。
  • 証明書と鍵は 読み取り専用 (ro) でマウントし、コンテナ内部からの改ざんリスクを低減。

5‑3. ログローテーション

Kong のログを標準出力に流す構成の場合は Docker デーモン側のロギングドライバが管理します。ファイルへ書き込む場合は、ホスト OS の logrotate を利用するのが一般的です。

上記設定を /etc/logrotate.d/docker-containers に保存し、logrotate のデーモンが毎日実行されるようにします。

5‑4. よくあるエラーと対処法

症状 想定原因 推奨対策
ポート衝突(8000/8443) ホスト上で別サービスが同ポートを使用中 docker compose down 後に lsof -i :8000 等でプロセス確認、必要なら Compose の ports を変更
502 Bad Gateway が頻発 コンテナのメモリ制限不足 (--memory) またはバックエンドサービス不在 docker compose.ymlmem_limit: "1g" 追加し、バックエンド API の可用性を確認
プラグインが無効 kong.yml の YAML 構文エラー、または _format_version が欠如 yamllint 等で検証し、必ず _format_version: "3.0" を記載
Admin API が応答なし KONG_ADMIN_LISTEN がローカル限定 (127.0.0.1) 0.0.0.0:8001 に変更し、ファイアウォール設定で IP 制限を追加
TLS ハンドシェイク失敗 証明書と鍵が不一致、またはチェーンが欠落 openssl x509 -noout -modulus -in server.crt | openssl md5openssl rsa -noout -modulus -in server.key | openssl md5 が同一か確認

まとめ

  • 公式情報を必ず参照し、バージョン番号は「最新安定版」タグで取得する。
  • Docker Engine ≥ 20.10 と Compose v2 系があれば、Linux・macOS・Windows のいずれでも Kong を問題なく実行できる。
  • DB‑less は軽量・GitOps 向き、データベースモード は大規模・リアルタイム変更に適する。ユースケースに応じて選択を。
  • Docker Compose の docker-compose.yml と宣言的設定 kong.yml を用意すれば、数分で Kong が稼働し、プラグインや TLS もコードベースで管理できる。
  • 本番運用では TLS 設定、ログローテーション、エラー対策 を忘れずに実装し、セキュリティと可観測性を確保する。

次のステップ:本ガイドに沿って試験環境で Kong を構築し、CI/CD パイプラインへ組み込むことで、本番展開へのハードルを下げましょう。

スポンサードリンク

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


-KongGateway