本文主要是介绍【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
配置
环境变量
可定制的环境变量
Name | Description | Default Value |
---|---|---|
KONG_MIGRATE | 执行Kong数据库迁移。 | no |
KONG_EXIT_AFTER_MIGRATE | 执行数据库迁移后退出 Kong. | no |
KONG_PROXY_LISTEN_ADDRESS | Kong 代理守护进程的监听地址. | 0.0.0.0 |
KONG_PROXY_HTTP_PORT_NUMBER | Kong 代理守护进程的 HTTP 端口. | 8000 |
KONG_PROXY_HTTPS_PORT_NUMBER | Kong 代理守护程序的 HTTPS 端口. | 8443 |
KONG_ADMIN_LISTEN_ADDRESS | Kong 管理守护进程的监听地址。 | 0.0.0.0 |
KONG_ADMIN_HTTP_PORT_NUMBER | Kong 管理守护进程的 HTTP 端口。 | 8001 |
KONG_ADMIN_HTTPS_PORT_NUMBER | Kong 管理守护进程的 HTTPS 端口。 | 8444 |
KONG_NGINX_DAEMON | 为 nginx 守护进程设置静默日志流。 | off |
KONG_PROXY_LISTEN | Kong代理监听地址。 | ${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_LISTEN | Kong管理员监听地址。 | ${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} |
只读环境变量
Name | Description | Value |
---|---|---|
KONG_BASE_DIR | Kong 安装目录。 | ${BITNAMI_ROOT_DIR}/kong |
KONG_CONF_DIR | Kong 配置目录。 | ${KONG_BASE_DIR}/conf |
KONG_DEFAULT_CONF_DIR | Kong 配置目录。 | ${KONG_BASE_DIR}/conf.default |
KONG_CONF_FILE | Kong 配置文件。 | ${KONG_CONF_DIR}/kong.conf |
KONG_DEFAULT_CONF_FILE | Kong 默认配置文件。 | ${KONG_CONF_DIR}/kong.conf.default |
KONG_INITSCRIPTS_DIR | Kong 初始化脚本目录。 | /docker-entrypoint-initdb.d |
KONG_SERVER_DIR | 创建 Kong Openresty 实例的目录。 | ${KONG_BASE_DIR}/server |
KONG_PREFIX | Kong 安装目录。 | ${KONG_SERVER_DIR} |
KONG_DEFAULT_SERVER_DIR | 包含默认 Kong Openresty 实例文件的目录。 | ${KONG_BASE_DIR}/server.default |
KONG_LOGS_DIR | Kong日志存储的目录。 | ${KONG_SERVER_DIR}/logs |
KONG_PID_FILE | Kong 的 PID 文件的路径。 | ${KONG_SERVER_DIR}/pids/nginx.pid |
KONG_DAEMON_USER | Kong system user. | kong |
KONG_DAEMON_GROUP | Kong 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 容器化部署及配置参数说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!