Docker Compose部署Kong服务持续退出,数据库值无效如何解决?
修复Kong启动报错:database has an invalid value: 'false'
问题描述
执行docker compose up时,其余服务正常启动,但Kong服务随即退出。执行docker compose logs kong查看日志,得到报错:
Error: database has an invalid value: 'false' (postgres, cassandra, off)
问题原因
你的Docker Compose配置中,KONG_DATABASE: off里的off被YAML解析器自动转换为布尔值false,而Kong需要的是字符串类型的"off",因此触发了参数合法性校验错误。
修复步骤
- 修改Docker Compose中Kong服务的环境变量配置,给
KONG_DATABASE的值加上双引号,确保解析为字符串:
kong: image: kong:latest environment: KONG_DATABASE: "off" # 此处添加双引号 KONG_DECLARATIVE_CONFIG: /etc/kong/kong.yml KONG_PROXY_ACCESS_LOG: /dev/stdout KONG_ADMIN_ACCESS_LOG: /dev/stdout KONG_PROXY_ERROR_LOG: /dev/stderr KONG_ADMIN_ERROR_LOG: /dev/stderr KONG_ADMIN_LISTEN: 0.0.0.0:8001 volumes: - ./kong.yml:/etc/kong/kong.yml ports: - 8000:8000 - 8443:8443 - 8001:8001 - 8444:8444 networks: - movie-network
- 重新启动服务:
docker compose down docker compose up -d
- 验证Kong状态:
docker compose logs kong curl http://localhost:8001
如果能正常返回Kong的管理API响应,说明问题已修复。
内容的提问来源于stack exchange,提问作者Teona Kuzmanovska
相关产品推荐
相关产品推荐

