kong网关无法连接consul的8600端口
所有服务都写在docker中,包括Postgres、kong、konga、consul,如果不配置kong的dns_resolver,一切都正常,konga能访问,新增service也正常,在Postgres当中也能查到数据,访问consul的8500界面也能行。
但是配置了dns_resolver后看日志一直提示连接127.0.0.1:8600失败,以下为docker-comspoe.yml文件部分内容(只贴出相关的kong和consul):
version: "3.7"
volumes:
kong_data: {}
networks:
kong-net:
services:
#######################################
# Kong: The API Gateway
#######################################
kong:
image: kong/kong-gateway:2.8.1.1-alpine
restart: on-failure
networks:
- kong-net
environment:
- KONG_DATABASE=postgres
- KONG_PG_HOST=kong-database
- KONG_PG_USER=kong
- KONG_PG_PASSWORD=kongpass
- 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_PROXY_LISTEN: 0.0.0.0:8000
# KONG_PROXY_LISTEN_SSL: 0.0.0.0:8443
- KONG_ADMIN_LISTEN=0.0.0.0:8001
# - KONG_DNS_RESOLVER=127.0.0.1:8600
- KONG_ADMIN_GUI_URL=http://localhost:8002
volumes:
- ./kong.conf:/etc/kong/kong.conf.default
depends_on:
- kong-database
healthcheck:
test: ["CMD", "kong", "health"]
interval: 10s
timeout: 10s
retries: 10
ports:
- "8000:8000"
- "8001:8001"
- "8002:8002"
- "8003:8004"
- "8004:8004"
- "8443:8443"
- "8444:8444"
- "8445:8445"
#######################################
# Consul: Consul
#######################################
consul:
image: hashicorp/consul:latest
networks:
- kong-net
command: agent -dev -client=0.0.0.0
ports:
- "8300:8300"
- "8301:8301"
- "8302:8302"
- "8500:8500"
- "8600:8600"
- "8600:8600/udp"
报错贴一下把
- KONG_DNS_RESOLVER=127.0.0.1:8600
放开试一下把 看下能不能解决 参考一下 cloud.tencent.com/developer/ask/so...
docker ps 一下 看下容器有没有启动 看有没有端口映射之类的 要不就卸载重新来一遍把
有解决的么