kong/kong-devKong OSS(Open Source Software)开发版、夜间构建版与 PR 镜像均为 Kong 开源 API 网关的特殊构建版本,旨在支持开发者与集成测试场景。三者基于 Kong OSS 核心架构(Nginx 驱动的高性能 API 网关),但定位与更新机制不同:
next 或 main)构建,包含未正式发布的新功能与改进,供开发者提前体验与测试。main)自动构建,集成最新代码提交与 bug 修复,用于持续验证主分支稳定性。rate-limiting、cors)及自定义插件。| 版本类型 | 核心特性 |
|---|---|
| 开发版 | 包含最新开发中功能(如未发布的插件、协议支持);API 可能随开发迭代变化。 |
| 夜间构建版 | 每日自动更新,反映主分支最新状态;包含最新 bug 修复,适合早期问题验证。 |
| PR 镜像 | 与特定 PR 强绑定,仅包含该 PR 的代码变更;用于验证 PR 功能/修复的有效性。 |
| 版本类型 | 适用场景 | 目标用户 |
|---|---|---|
| 开发版 | 新功能预研、插件开发适配、兼容性测试。 | Kong 插件开发者、API 网关集成测试团队。 |
| 夜间构建版 | 持续集成(CI)流程、主分支每日稳定性验证、提前发现潜在回归问题。 | Kong 核心开发团队、依赖 Kong 的下游项目。 |
| PR 镜像 | PR 提交者验证代码功能、Reviewer 确认 PR 修复效果、自动化测试流程集成。 | Kong 代码贡献者、代码审核者。 |
注意:所有版本均为非生产环境设计,稳定性与兼容性未经过正式发布流程验证,请勿用于生产部署。
bash# 拉取最新开发版(默认基于 main 分支) docker pull kong/kong:dev # 拉取指定开发分支(如 feature/new-plugin) docker pull kong/kong:dev-feature-new-plugin
bash# 拉取最新夜间构建版(每日更新) docker pull kong/kong:nightly
bash# 拉取指定 PR 的镜像(PR 编号为 1234) docker pull kong/kong:pr-1234
bashdocker run -d \ --name kong-dev \ -p 8000:8000 # 代理端口(HTTP) \ -p 8443:8443 # 代理端口(HTTPS) \ -p 8001:8001 # Admin API 端口 \ -e KONG_DATABASE=off \ # 独立模式(无需数据库) -e KONG_PROXY_LISTEN=0.0.0.0:8000,0.0.0.0:8443 ssl \ -e KONG_ADMIN_LISTEN=0.0.0.0:8001 \ kong/kong:dev
bash# 1. 启动 PostgreSQL(需提前创建数据库 `kong`) docker run -d \ --name kong-db \ -e POSTGRES_DB=kong \ -e POSTGRES_USER=kong \ -e POSTGRES_PASSWORD=kong \ -p 5432:5432 \ postgres:14-alpine # 2. 启动夜间版 Kong,连接数据库 docker run -d \ --name kong-nightly \ --link kong-db:db \ # 关联数据库容器 -p 8000:8000 \ -p 8443:8443 \ -p 8001:8001 \ -e KONG_DATABASE=postgres \ -e KONG_PG_HOST=db \ -e KONG_PG_USER=kong \ -e KONG_PG_PASSWORD=kong \ -e KONG_PG_DATABASE=kong \ kong/kong:nightly kong migrations bootstrap # 初始化数据库迁移
| 环境变量 | 用途说明 | 默认值 |
|---|---|---|
KONG_DATABASE | 数据库类型,可选 postgres、cassandra 或 off(独立模式)。 | postgres |
KONG_PROXY_LISTEN | 代理服务监听地址与端口,支持 TCP/UDP/SSL。 | 0.0.0.0:8000, 0.0.0.0:8443 ssl |
KONG_ADMIN_LISTEN | Admin API 监听地址与端口,用于配置管理。 | 0.0.0.0:8001 |
KONG_LOG_LEVEL | 日志级别,可选 debug、info、warn、error。 | info |
KONG_PLUGINS | 启用的插件列表(逗号分隔),如 bundled,my-custom-plugin。 | bundled(官方插件) |
KONG_PG_HOST | PostgreSQL 主机地址(当 KONG_DATABASE=postgres 时)。 | localhost |
KONG_CASSANDRA_CONTACT_POINTS | Cassandra 节点地址(当 KONG_DATABASE=cassandra 时)。 | localhost |
yamlversion: '3.8' services: kong-db: image: postgres:14-alpine container_name: kong-nightly-db environment: POSTGRES_DB: kong POSTGRES_USER: kong POSTGRES_PASSWORD: kong volumes: - kong-db-data:/var/lib/postgresql/data # 持久化数据库数据 ports: - "5432:5432" healthcheck: test: ["CMD-SHELL", "pg_isready -U kong"] interval: 5s timeout: 5s retries: 5 kong: image: kong/kong:nightly container_name: kong-nightly depends_on: kong-db: condition: service_healthy environment: KONG_DATABASE: postgres KONG_PG_HOST: kong-db KONG_PG_USER: kong KONG_PG_PASSWORD: kong KONG_PG_DATABASE: kong KONG_PROXY_LISTEN: 0.0.0.0:8000, 0.0.0.0:8443 ssl KONG_ADMIN_LISTEN: 0.0.0.0:8001 KONG_LOG_LEVEL: debug # 夜间版建议开启 debug 日志便于问题排查 ports: - "8000:8000" # 代理 HTTP - "8443:8443" # 代理 HTTPS - "8001:8001" # Admin API command: kong migrations bootstrap && kong start # 初始化迁移并启动 volumes: kong-db-data: # 持久化卷定义
docker rm -f <容器名> 及 docker volume rm <卷名> 清理临时容器与数据,避免残留影响。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务