コンテンツにスキップ
Kong Logo | Kong Docs Logo
  • ドキュメント
    • API仕様を確認する
      View all API Specs すべてのAPI仕様を表示 View all API Specs arrow image
    • ドキュメンテーション
      API Specs
      Kong Gateway
      軽量、高速、柔軟なクラウドネイティブAPIゲートウェイ
      Kong Konnect
      SaaSのエンドツーエンド接続のための単一プラットフォーム
      Kong AI Gateway
      GenAI インフラストラクチャ向けマルチ LLM AI Gateway
      Kong Mesh
      Kuma と Envoy をベースにしたエンタープライズサービスメッシュ
      decK
      Kongの構成を宣言型で管理する上で役立ちます
      Kong Ingress Controller
      Kubernetesクラスタ内で動作し、Kongをプロキシトラフィックに設定する
      Kong Gateway Operator
      YAMLマニフェストを使用してKubernetes上のKongデプロイメントを管理する
      Insomnia
      コラボレーティブAPI開発プラットフォーム
  • Plugin Hub
    • Plugin Hubを探索する
      View all plugins すべてのプラグインを表示 View all plugins arrow image
    • 機能性 すべて表示 View all arrow image
      すべてのプラグインを表示
      AI's icon
      AI
      マルチ LLM AI Gatewayプラグインを使用してAIトラフィックを管理、保護、制御する
      認証's icon
      認証
      認証レイヤーでサービスを保護する
      セキュリティ's icon
      セキュリティ
      追加のセキュリティレイヤーでサービスを保護する
      トラフィック制御's icon
      トラフィック制御
      インバウンドおよびアウトバウンドAPIトラフィックの管理、スロットル、制限
      サーバーレス's icon
      サーバーレス
      他のプラグインと組み合わせてサーバーレス関数を呼び出します
      分析と監視's icon
      分析と監視
      APIとマイクロサービストラフィックを視覚化、検査、監視
      変革's icon
      変革
      Kongでリクエストとレスポンスをその場で変換
      ログ記録's icon
      ログ記録
      インフラストラクチャに最適なトランスポートを使用して、リクエストと応答データをログに記録します
  • サポート
  • コミュニティ
  • Kongアカデミー
デモを見る 無料トライアルを開始
Kong Gateway
3.8.x
  • Home icon
  • Kong Gateway
  • Plugin Development
  • Get Started
  • プラグインのデプロイ
report-issue問題を報告する
  • Kong Gateway
  • Kong Konnect
  • Kong Mesh
  • Kong AI Gateway
  • Plugin Hub
  • decK
  • Kong Ingress Controller
  • Kong Gateway Operator
  • Insomnia
  • Kuma

  • ドキュメント投稿ガイドライン
  • 3.10.x (latest)
  • 3.9.x
  • 3.8.x
  • 3.7.x
  • 3.6.x
  • 3.5.x
  • 3.4.x (LTS)
  • 3.3.x
  • 2.8.x (LTS)
  • アーカイブ (2.6より前)
  • はじめに
    • Kong Gatewayの概要
    • サポート
      • バージョンサポートポリシー
      • サードパーティの依存関係
      • ブラウザサポート
      • 脆弱性パッチ適用プロセス
      • ソフトウェア部品表
    • 安定性
    • リリースノート
    • 破壊的な変更
      • Kong Gateway 3.8.x
      • Kong Gateway 3.7.x
      • Kong Gateway 3.6.x
      • Kong Gateway 3.5.x
      • Kong Gateway 3.4.x
      • Kong Gateway 3.3.x
      • Kong Gateway 3.2.x
      • Kong Gateway 3.1.x
      • Kong Gateway 3.0.x
      • Kong Gateway 2.8.x 以前
    • キーコンセプト
      • サービス
      • ルート
      • コンシューマ
      • アップストリーム
      • プラグイン
      • コンシューマグループ
    • How Kong Works
      • ルーティングトラフィック
      • ロードバランシング
      • ヘルスチェックとサーキットブレーカ
    • 用語集
  • Kong を始めよう
    • Kong をゲットする
    • サービスとルート
    • レート制限
    • プロキシキャッシュ
    • キー認証
    • ロードバランシング
  • コングをインストールする
    • 概要
    • Kubernetes
      • 概要
      • Kong Gatewayをインストール
      • Admin API
      • Kong Manager をインストールする
    • Docker
      • docker run を使用する
      • 独自の Docker イメージをビルドする
    • Linux
      • Amazon Linux
      • Debian
      • Red Hat
      • Ubuntu
    • インストール後
      • データストアを設定
      • エンタープライズライセンスを適用
      • Kong Managerを有効にする
  • Kong in production
    • 展開のトポロジーズ
      • 概要
      • ハイブリッドモード
        • 概要
        • ハイブリッドモードでKong Gatewayをデプロイする
      • DB-lessデプロイ
      • 繁体字版
    • Running Kong
      • non-rootユーザーとしてKongを実行しています
      • 管理者 API の保護
      • systemdの使用
    • アクセスコントロール
      • コングゲートウェイを安全に開始
      • プログラムによる管理者の作成
      • RBAC を有効にする
    • ライセンス
      • 概要
      • ライセンスをダウンロード
      • エンタープライズライセンスのデプロイ
      • ライセンスAPIの使用
      • ライセンス使用状況をモニターする
    • ネットワーク
      • デフォルトのポート
      • DNSに関する考察
      • ネットワークとファイアウォール
      • CP/DP Communication through a Forward Proxy
      • PostgreSQL TLS
        • PostgreSQL TLS の設定
        • PostgreSQL TLS のトラブルシューティング
    • Kongの設定ファイル
    • 環境変数
    • KongからウェブサイトとAPIを提供する
    • モニタリング
      • 概要
      • Prometheus
      • StatsD
      • Datadog
      • ヘルスチェックプローブ
      • AIメトリクスを公開してグラフ
    • トレース
      • 概要
      • カスタム・トレース・エクスポーターの作成
      • トレースAPIリファレンス
    • リソースサイズのガイドライン
    • セキュリティアップデートプロセス
    • ブルー・グリーンの展開
    • カナリアのデプロイ
    • クラスタリングリファレンス
    • パフォーマンス
      • パフォーマンステストのベンチマーク
      • パフォーマンスのベンチマークを作成
      • Brotli圧縮によるパフォーマンスの向上
    • ロギングとデバッグ
      • ログの参照
      • ダイナミックログレベルの更新
      • ゲートウェイログをカスタマイズ
      • デバッグリクエスト
      • AIゲートウェイ分析
    • gRPCサービスの設定
    • 式ルータを使用
    • アップグレードと移行
      • 香港ゲートウェイ3.x.xをアップグレードする
      • バックアップと復元
      • アップグレードの戦略
        • デュアルクラスターのアップグレード
        • インプレイスアップグレード
        • 青緑色のアップグレード
        • ローリングアップグレード
      • 2.8 LTSから3.4 LTSにアップグレード
      • OSSからエンタープライズへ移行
      • 移行ガイドライン Cassandra から PostgreSQL
      • 新しい DNS クライアントに移行
      • 破壊的な変更
  • Kong Gateway Enterprise
    • 概要
    • シークレット管理
      • 概要
      • はじめに
      • ローテーション
      • 高度な使い方
      • バックエンドの設定
        • 概要
        • 環境変数
        • AWS シークレットマネージャー
        • Azure Key Vault
        • Google Cloud Secret Manager
        • HashiCorp Vault
      • How-To
        • AWS シークレットマネージャでデータベースを保護する
      • 参照フォーマット
    • 動的なプラグインの順序
      • 概要
      • 動的なプラグインの順序を始めましょう
    • 監査ログ
    • キーリングとデータ暗号化
    • ワークスペース
    • コンシューマグループ
    • イベントフック
    • データ プレーンレジリエンスの設定
    • 制御機の停止管理について
    • FIPS 140-2
      • 概要
      • FIPS 準拠パッケージをインストール
      • FIPS 140-2 準拠プラグイン
    • AWS IAMでKong Gateway Amazon RDSデータベースを認証する
    • 署名された香港の画像の署名を確認します
    • 署名された香港画像のビルド証明書を確認する
  • Kong AI Gateway
    • 概要
    • AI ゲートウェイを始めよう
    • LLM プロバイダー統合ガイド
      • OpenAI
      • Cohere
      • Azure
      • Anthropic
      • ミストラル
      • Llama2
    • AIプラットフォーム統合ガイド
      • Gemini
      • Amazon Bedrock
    • AIゲートウェイ分析
    • AI指標を公開・グラフ
    • AI Gateway plugins
  • Kong Manager
    • 概要
    • Kong Managerを有効にする
    • Kong Manager を始めましょう
      • サービスとルート
      • レート制限
      • プロキシキャッシュ
      • コンシューマーとの認証
      • 負荷バランス
    • 認証と承認
      • 概要
      • スーパー管理者を作成
      • ワークスペースとチーム
      • パスワードとRBACトークンをリセット
      • ベーシック認証
      • LDAP
        • LDAP の設定
        • LDAP サービス ディレクトリ マッピング
      • OIDC
        • OIDCの設定
        • OIDC 認証済みグループマッピング
        • 以前の設定から移行
      • セッション
      • RBAC
        • 概要
        • RBACを有効にする
        • ロールと権限を追加
        • ユーザーを作成
        • 管理者を作成
    • ネットワーク設定
    • ワークスペース
    • 顧客グループを作成
    • メールを送信中
    • トラブルシューティング
  • カスタムプラグインを開発
    • 概要
    • はじめに
      • はじめに
      • プラグインプロジェクトの設定
      • プラグインテストを追加
      • プラグイン設定を追加
      • 外部サービスを消費する
      • プラグインをデプロイ
    • ファイル構造
    • カスタムロジックの実装
    • プラグインの設定
    • データストアへのアクセス
    • カスタムエンティティの保存
    • カスタムエンティティをキャッシュ中
    • 管理者 API の拡張
    • テストを書く
    • 設置と配布
    • プロキシ-ワズムフィルター
      • プロキシワズムフィルタを作成
      • プロキシ-ワズムフィルタの設定
    • プラグイン開発キット
      • 概要
      • kong.client
      • kong.client.tls
      • kong.cluster
      • kong.ctx
      • kong.ip
      • kong.jwe
      • kong.log
      • kong.nginx
      • kong.node
      • kong.plugin
      • kong.request
      • kong.response
      • kong.router
      • kong.service
      • kong.service.request
      • kong.service.response
      • kong.table
      • kong.telemetry.log
      • kong.tracing
      • kong.vault
      • kong.websocket.client
      • kong.websocket.upstream
    • 他の言語でのプラグイン
      • 移動
      • Javascript
      • Python
      • コンテナでのプラグインの実行
      • 外部プラグインのパフォーマンス
  • Kong Plugins
    • 概要
    • 認証リファレンス
    • 複数の認証プラグインを許可
    • プラグインのキュー
      • 概要
      • プラグインキューイングリファレンス
  • Admin API
    • 概要
    • 宣言設定
    • Enterprise API
      • 情報ルート
      • 健康ルート
      • タグ
      • デバッグルート
      • サービス
      • ルート
      • コンシューマ
      • プラグイン
      • 証明書
      • CA 証明書
      • SNI
      • アップストリーム
      • ターゲット
      • ヴォールト
      • キー
      • チェーンをフィルター
      • ライセンス
      • ワークスペース
      • RBAC
      • 管理者
      • コンシューマグループ
      • イベントフック
      • キーリングとデータ暗号化
      • 監査ログ
      • Status API
    • オープンソースAPI
  • 参照
    • kong.conf
    • Nginx ディレクティブの注入中
    • CLI
    • キー管理
    • 表現の言語
      • 概要
      • 言語リファレンス
      • パフォーマンスの最適化
    • ライブラリのレート制限
    • WebAssembly
    • FAQ
enterprise-switcher-icon 次に切り替える: OSS
On this pageOn this page
  • 前提条件
  • 段階的な手順
    • 次を作成 Dockerfile
    • Docker イメージのビルド
    • カスタムイメージを実行する
    • デプロイされたmy-pluginプラグインをテストする
  • その他のデプロイオプション
    • Kubernetesのデプロイメント
    • パッケージパスの上書き
    • LuaRocksパッケージの構築
  • Kong Konnect のカスタムプラグイン
  • 次の手順
旧バージョンのドキュメントを参照しています。 最新のドキュメントはこちらをご参照ください。

プラグインのデプロイ

機能的なカスタムプラグインを作成したら、それを使用するために Kong Gatewayにデプロイする必要があります。カスタムプラグインをデプロイする方法は複数あり、どの方法を選択するかは、特定のKong Gateway環境やその他のテクノロジーの選択に大きく依存します。このセクションでは、一般的なデプロイオプションについて説明し、詳細な手順の参考資料を提供します。

前提条件

このページは、カスタムプラグインの開発用導入 ガイドの第5章です。これらの手順はガイドの前の章を参照しており、同じ開発者ツールの前提条件が必然的に適用されます。

段階的な手順

Kong Gatewayを実行するための非常に一般的な選択肢は、コンテナランタイムシステムの使用です。Kongは、デプロイメントで使用するためにDockerイメージを構築および検証し、Dockerデプロイメントで詳細な手順を提供します。カスタムプラグインをKong Gatewayコンテナで使用するためのいくつかのオプションをご紹介します。

一般的なオプションの1つは、カスタムプラグインコードを追加して、必要な環境をイメージに直接設定するDockerイメージの構築です。このソリューションでは、デプロイメントパイプラインの構築段階でより多くのステップを実行する必要がありますが、構成としてのデータプレーン(DP)デプロイメントが簡素化され、カスタムコードはデータプレーン(DP)イメージに直接送信されます。

次を作成 Dockerfile

my-pluginプロジェクトのルートにDockerfileという名前の新しいファイルを作成し、次の内容でカスタムイメージを実行します。

FROM kong/kong-gateway:3.8
# Ensure any patching steps are executed as root user
USER root

# Add custom plugin to the image
COPY ./kong/plugins/my-plugin /usr/local/share/lua/5.1/kong/plugins/my-plugin
ENV KONG_PLUGINS=bundled,my-plugin

# Ensure kong user is selected for image execution
USER kong

# Run kong
ENTRYPOINT ["/entrypoint.sh"]
EXPOSE 8000 8443 8001 8444
STOPSIGNAL SIGQUIT
HEALTHCHECK --interval=10s --timeout=10s --retries=10 CMD kong health
CMD ["kong", "docker-start"]

Docker イメージのビルド

Dockerイメージをビルドするときは、識別するためのタグを付けます。Kong Gatewayバージョンとプラグインのバージョンを指定する情報を画像にタグ付けすることをお勧めします。例えば、以下のようにするとカスタムイメージが構築され、バージョンのmy-pluginの部分が0.0.1としてラベル付けされます。

docker build -t kong-gateway_my-plugin:3.8-0.0.1 .

カスタムイメージを実行する

これで、Kong Gatewayクイックスタートスクリプトを使用してカスタムイメージを実行し、プラグインをさらにテストできるようになりました。クイックスタートスクリプトでは、Docker リポジトリ(-r)、イメージ(-i)、タグ(-t)をオーバーライドできるフラグがサポートされています。コマンドの例を次に示します。

curl -Ls https://get.konghq.com/quickstart | \
  bash -s -- -r "" -i kong-gateway_my-plugin -t 3.8-0.0.1

デプロイされたmy-pluginプラグインをテストする

カスタムイメージでKong Gatewayが実行されるようになったら、プラグインを手動でテストして動作を検証できます。

テストサービスを追加します。

curl -i -s -X POST http://localhost:8001/services \
    --data name=example_service \
    --data url='http://httpbin.org'

カスタムプラグインをexample_serviceサービスに関連付けます。

curl -is -X POST http://localhost:8001/services/example_service/plugins \
    --data 'name=my-plugin'

リクエストを送信するために使用できる新しいルートを追加します。

curl -i -X POST http://localhost:8001/services/example_service/routes \
    --data 'paths[]=/mock' \
    --data name=example_route

リクエストをテストルートにプロキシして、curlに-iフラグの付いたレスポンスヘッダーを表示させることで動作をテストします。

curl -i http://localhost:8000/mock/anything

curl は HTTP/1.1 200 OK を報告し、ゲートウェイからのレスポンスヘッダーを表示します。ヘッダーのセットには、次を含める必要があります。X-MyPlugin

以下に例を示します。

HTTP/1.1 200 OK
Content-Type: application/json
Connection: keep-alive
Content-Length: 529
Access-Control-Allow-Credentials: true
Date: Tue, 12 Mar 2024 14:44:22 GMT
Access-Control-Allow-Origin: *
Server: gunicorn/19.9.0
X-MyPlugin: http://httpbin.org/anything
X-Kong-Upstream-Latency: 97
X-Kong-Proxy-Latency: 1
Via: kong/3.6.1
X-Kong-Request-Id: 8ab8c32c4782536592994514b6dadf55

その他のデプロイオプション

カスタムプラグインのデプロイオプションは、カスタムDockerイメージの構築以外にも次のようなものがあります。

Kubernetesのデプロイメント

多くのユーザーは、Kubernetes上でKong Gatewayを実行することを選択します。Kong Gateway は、Kubernetesに直接デプロイすることも、Kong Ingress Controllerを使用してデプロイすることもできます。どちらの場合でも、Kubernetesへのカスタムプラグインのデプロイは、カスタムプラグインコードをConfigMapまたはSecretのクラスタに追加し、Kong Gatewayプロキシポッドにマウントすることで実行されます。さらに、ポッドは、マウントされたボリュームからカスタムプラグインコードをロードするように設定する必要があります。

Kongは、構成したプラグインに基づいたプロキシポッドが必要とする環境を構成することで、このプロセスを簡素化するHelmチャートを提供します。Helm以外のデプロイメントの場合は、環境を直接変更する必要があります。

カスタムプラグインのドキュメントページには、 Kongヘルムチャート または標準のKubernetesマニフェストを直接使用してカスタムプラグインを デプロイする手順が記載されています。

パッケージパスの上書き

Kong Gatewayをベアメタルまたは仮想マシン環境で実行する場合に、Lua VMがパッケージを 探すロケーションを上書きするのは、カスタムプラグインのデプロイのための一般的なストラテジです。 上記と同じファイル構造に従って、ホストマシンにソースファイルを配布し、 lua_package_path構成値をこのパスを指すように変更することができます。 この構成は、 KONG_LUA_PACKAGE_PATH環境変数を使用して変更することもできます。

このオプションの詳細については、カスタムプラグインのインストールドキュメントを参照してください。

注 : このストラテジは、ベアメタルまたは仮想マシン環境に加えて、コンテナ化されたシステムでのボリュームマウントにも使用できます。

LuaRocksパッケージの構築

LuaRocksはLuaモジュール用のパッケージマネージャーです。これにより、Lua モジュールをrockと呼ばれる自己完結型のパッケージとして作成およびインストールできます。 rock パッケージを作成するには、パッケージに関するさまざまな情報を指定する rockspec ファイルを作成します。luarocksツールを使用して、rockspec ファイルからアーカイブを作成し、それをデータプレーン(DP)に配信して抽出します。

この配布オプションの詳細については、カスタムプラグインのインストールページにあるソースのパッケージセクションを参照してください。

Kong Konnect のカスタムプラグイン

Kong Konnectは、サービスとしてのKongの統合APIプラットフォームです。Konnectは、いくつかの制限付きでカスタムプラグインをサポートします。オンプレミスのデプロイでは、ユーザーがKong Gatewayデータプレーン(DP)、コントロールプレーン(CP)、オプションでバッキングデータベースを管理します。Kong Konnectでコントロールプレーンとデータベースが完全に管理されているため、カスタムデータエンティティのサポートとプラグインのAdmin API拡張が制限されます。

Konnect ドキュメントのプラグインの管理には、Kong Konnect へのカスタムプラグインのデプロイに関する詳細情報が記載されています。

次の手順

カスタムプラグインの構築は Kong Gateway の動作を拡張し、APIゲートウェイレイヤーでビジネスロジックを有効にするための優れた方法です。ただし、カスタムプラグイン開発は最後の手段として使用するのが最適です。Kong Gateway は、多くの一般的なユースケースをカバーする多数のビルド済みプラグインをサポートしており、その中には、カスタムビジネスロジックプログラミングを、ビルド済みでサポートされているプラグインに直接組み込むことができるサーバーレスプラグインも含まれています。サポートされているプラグインの完全なカタログについては、Kong Plugin Hub を参照してください。

Kong Gatewayを実行するための最適な方法は、Kongのサービスとしての統合APIプラットフォームKong Konnectを使用することです。Kong Konnectは、ログインまたは登録すればすぐに無料で始められます。


前へ 外部サービスの利用
Thank you for your feedback.
Was this page useful?
情報が多すぎる場合 close cta icon
Kong Konnectを使用すると、より多くの機能とより少ないインフラストラクチャを実現できます。月額1Mリクエストが無料。
無料でお試しください
  • Kong
    APIの世界を動かす

    APIマネジメント、サービスメッシュ、イングレスコントローラーの統合プラットフォームにより、開発者の生産性、セキュリティ、パフォーマンスを大幅に向上します。

    • 製品
      • Kong Konnect
      • Kong Gateway Enterprise
      • Kong Gateway
      • Kong Mesh
      • Kong Ingress Controller
      • Kong Insomnia
      • 製品アップデート
      • 始める
    • ドキュメンテーション
      • Kong Konnectドキュメント
      • Kong Gatewayドキュメント
      • Kong Meshドキュメント
      • Kong Insomniaドキュメント
      • Kong Konnect Plugin Hub
    • オープンソース
      • Kong Gateway
      • Kuma
      • Insomnia
      • Kongコミュニティ
    • 会社概要
      • Kongについて
      • お客様
      • キャリア
      • プレス
      • イベント
      • お問い合わせ
  • 利用規約• プライバシー• 信頼とコンプライアンス
© Kong Inc. 2025