【Docker】Kong 容器化部署及配置参数说明

2024-03-17 15:52

本文主要是介绍【Docker】Kong 容器化部署及配置参数说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Kong标准软件基于Bitnami apache 构建。当前版本为2.4.58

你可以通过轻云UC部署工具直接安装部署,也可以手动按如下文档操作,该项目已经全面开源,可以从如下环境获取
配置文件地址: https://gitee.com/qingplus/qingcloud-platform

qinghub自动安装部署配置库

什么是Kong?

Kong是一款基于OpenResty(Nginx + Lua模块)编写的高可用、易扩展的,由Mashape公司开源的API Gateway项目。Kong是基于NGINX和Apache Cassandra或PostgreSQL构建的,能提供易于使用的RESTful API来操作和配置API管理系统,所以它可以水平扩展多个Kong服务器,通过前置的负载均衡配置把请求均匀地分发到各个Server,来应对大批量的网络请求。

快速运行

docker run --name kong bitnami/kong:latest

配置

环境变量

可定制的环境变量
NameDescriptionDefault Value
KONG_MIGRATE执行Kong数据库迁移。no
KONG_EXIT_AFTER_MIGRATE执行数据库迁移后退出 Kong.no
KONG_PROXY_LISTEN_ADDRESSKong 代理守护进程的监听地址.0.0.0.0
KONG_PROXY_HTTP_PORT_NUMBERKong 代理守护进程的 HTTP 端口.8000
KONG_PROXY_HTTPS_PORT_NUMBERKong 代理守护程序的 HTTPS 端口.8443
KONG_ADMIN_LISTEN_ADDRESSKong 管理守护进程的监听地址。0.0.0.0
KONG_ADMIN_HTTP_PORT_NUMBERKong 管理守护进程的 HTTP 端口。8001
KONG_ADMIN_HTTPS_PORT_NUMBERKong 管理守护进程的 HTTPS 端口。8444
KONG_NGINX_DAEMON为 nginx 守护进程设置静默日志流。off
KONG_PROXY_LISTENKong代理监听地址。${KONG_PROXY_LISTEN_ADDRESS}:${KONG_PROXY_HTTP_PORT_NUMBER}, ${KONG_PROXY_LISTEN_ADDRESS}:${KONG_PROXY_HTTPS_PORT_NUMBER} ssl
KONG_PROXY_LISTEN_OVERRIDE覆盖代理监听。no
KONG_ADMIN_LISTENKong管理员监听地址。${KONG_ADMIN_LISTEN_ADDRESS}:${KONG_ADMIN_HTTP_PORT_NUMBER}, ${KONG_ADMIN_LISTEN_ADDRESS}:${KONG_ADMIN_HTTPS_PORT_NUMBER} ssl
KONG_ADMIN_LISTEN_OVERRIDE覆盖管理员监听。no
KONG_DATABASE选择 Kong 的数据库。postgres
KONG_DATABASE选择 Kong 的数据库。postgres
KONG_NGINX_USER设置nginx用户。${KONG_DAEMON_USER} ${KONG_DAEMON_GROUP}
只读环境变量
NameDescriptionValue
KONG_BASE_DIRKong 安装目录。${BITNAMI_ROOT_DIR}/kong
KONG_CONF_DIRKong 配置目录。${KONG_BASE_DIR}/conf
KONG_DEFAULT_CONF_DIRKong 配置目录。${KONG_BASE_DIR}/conf.default
KONG_CONF_FILEKong 配置文件。${KONG_CONF_DIR}/kong.conf
KONG_DEFAULT_CONF_FILEKong 默认配置文件。${KONG_CONF_DIR}/kong.conf.default
KONG_INITSCRIPTS_DIRKong 初始化脚本目录。/docker-entrypoint-initdb.d
KONG_SERVER_DIR创建 Kong Openresty 实例的目录。${KONG_BASE_DIR}/server
KONG_PREFIXKong 安装目录。${KONG_SERVER_DIR}
KONG_DEFAULT_SERVER_DIR包含默认 Kong Openresty 实例文件的目录。${KONG_BASE_DIR}/server.default
KONG_LOGS_DIRKong日志存储的目录。${KONG_SERVER_DIR}/logs
KONG_PID_FILEKong 的 PID 文件的路径。${KONG_SERVER_DIR}/pids/nginx.pid
KONG_DAEMON_USERKong system user.kong
KONG_DAEMON_GROUPKong system group.kong

此外,该容器还支持通过以KONG_. 例如,通过设置KONG_LOG_LEVEL环境变量,Kong 将考虑该值而不是 中设置的属性kong.conf。建议设置以下环境变量:

  • KONG_DATABASE: 使用的数据库类型。有效值:postgres或off。默认值:postgres
  • PostgreSQL database: KONG_PG_HOST, KONG_PG_PORT, KONG_PG_TIMEOUT, KONG_PG_USER, KONG_PG_PASSWORD。

配置说明

该image在/opt/bitnami/kong/conf/kong.conf中查找 Kong 配置文件,您可以使用自己的自定义配置文件覆盖该文件。

docker run --name kong \-e KONG_DATABASE=off \-v /path/to/kong.conf:/opt/bitnami/kong/conf/kong.conf \bitnami/kong:latest

或使用 Docker Compose:

version: '2'services:kong:image: 'bitnami/kong:latest'ports:- '8000:8000'- '8443:8443'environment:# Assume we don't want data persistence for simplicity purposes- KONG_DATABASE=offvolumes:- /path/to/kong.conf:/opt/bitnami/kong/conf/kong.conf

日志

Kong Docker 映像将容器日志发送到stdout. 要查看日志:

docker logs kong

这篇关于【Docker】Kong 容器化部署及配置参数说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/819413

相关文章

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

zookeeper端口说明及介绍

《zookeeper端口说明及介绍》:本文主要介绍zookeeper端口说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、zookeeper有三个端口(可以修改)aVNMqvZ二、3个端口的作用三、部署时注意总China编程结一、zookeeper有三个端口(可以

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker