Created
August 3, 2022 19:28
-
-
Save usrbinkat/05dcb1c69b1c5bb44b82d193afa5245c to your computer and use it in GitHub Desktop.
kong docker-compose.yml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| version: "3" | |
| networks: | |
| kong-ee: | |
| volumes: | |
| certs: | |
| driver: local | |
| redis_data: | |
| driver: local | |
| services: | |
| ############################################################################### | |
| redis: | |
| image: docker.io/bitnami/redis:6.2 | |
| container_name: redis | |
| hostname: redis | |
| restart: always | |
| environment: | |
| ALLOW_EMPTY_PASSWORD: "yes" | |
| REDIS_DISABLE_COMMANDS: "FLUSHDB,FLUSHALL" | |
| ports: | |
| - '6379:6379' | |
| volumes: | |
| - 'redis_data:/bitnami/redis/data' | |
| networks: | |
| - kong-ee | |
| ############################################################################### | |
| influxdb: | |
| image: docker.io/library/influxdb:1.8 | |
| container_name: influxdb | |
| hostname: influxdb | |
| restart: always | |
| environment: | |
| INFLUXDB_DB: kong | |
| networks: | |
| - kong-ee | |
| ports: | |
| - '8086:8086' | |
| ############################################################################### | |
| postgres: | |
| hostname: postgres | |
| image: docker.io/library/postgres:13 | |
| restart: always | |
| container_name: postgres | |
| ports: | |
| - 5432:5432 | |
| networks: | |
| - kong-ee | |
| healthcheck: | |
| test: [ "CMD", "pg_isready", "-U", "kong" ] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 10 | |
| environment: | |
| POSTGRES_DB: kong | |
| POSTGRES_USER: kong | |
| POSTGRES_PASSWORD: kong | |
| POSTGRES_HOST_AUTH_METHOD: trust | |
| ############################################################################### | |
| bootstrap: | |
| hostname: bootstrap | |
| container_name: bootstrap | |
| image: docker.io/kong/kong-gateway:2.4-alpine | |
| command: "kong migrations bootstrap ; kong migrations up ; kong migrations finish" | |
| depends_on: | |
| postgres: | |
| condition: service_healthy | |
| environment: | |
| KONG_AUDIT_LOG: "on" | |
| KONG_PASSWORD: ${KONG_PASSWORD:-password} | |
| KONG_LOG_LEVEL: debug | |
| KONG_DATABASE: "postgres" | |
| KONG_PG_HOST: postgres | |
| KONG_PG_USER: ${KONG_PG_USER:-kong} | |
| KONG_PG_PASSWORD: ${KONG_PG_PASSWORD:-kong} | |
| KONG_PG_DATABASE: ${KONG_PG_DATABASE:-kong} | |
| KONG_LICENSE_DATA: ${KONG_LICENSE_DATA} | |
| links: | |
| - postgres:postgres | |
| networks: | |
| - kong-ee | |
| restart: on-failure | |
| ############################################################################### | |
| certs: | |
| hostname: certs | |
| container_name: certs | |
| image: docker.io/kong/kong-gateway:2.4-alpine | |
| user: "${KONG_USER:-root}" | |
| restart: "no" | |
| command: "kong hybrid gen_cert /usr/local/kong/certs/cluster.crt /usr/local/kong/certs/cluster.key" | |
| networks: | |
| - kong-ee | |
| depends_on: | |
| - bootstrap | |
| volumes: | |
| - 'certs:/usr/local/kong/certs:z' | |
| ############################################################################### | |
| cp: | |
| hostname: cp | |
| container_name: cp | |
| image: kong/kong-gateway:2.4-alpine | |
| user: "${KONG_USER:-root}" | |
| restart: on-failure | |
| networks: | |
| - kong-ee | |
| depends_on: | |
| - redis | |
| - certs | |
| - postgres | |
| - bootstrap | |
| ports: | |
| - "8001:8001/tcp" | |
| - "8002:8002/tcp" | |
| - "8003:8003/tcp" | |
| - "8004:8004/tcp" | |
| - "8005:8005/tcp" | |
| - "8006:8006/tcp" | |
| - "8444:8444/tcp" | |
| - "8445:8445/tcp" | |
| - "8446:8446/tcp" | |
| - "8447:8447/tcp" | |
| environment: | |
| KONG_ROLE: control_plane | |
| KONG_PASSWORD: ${KONG_PASSWORD:-password} | |
| KONG_SMTP_MOCK: "on" | |
| KONG_ENFORCE_RBAC: "on" | |
| KONG_LICENSE_DATA: ${KONG_LICENSE_DATA} | |
| KONG_ADMIN_GUI_AUTH: basic-auth | |
| KONG_ADMIN_LISTEN: "0.0.0.0:8001, 0.0.0.0:8444 ssl" | |
| KONG_ADMIN_GUI_URL: http://kong.plutarch.codectl.lab:8002 | |
| KONG_ADMIN_GUI_LISTEN: "0.0.0.0:8002, 0.0.0.0:8445 ssl" | |
| KONG_ADMIN_GUI_SESSION_CONF: '{"storage": "kong", "secret": "mysecretpassword", "cookie_name": "admin_session", "cookie_samesite":"off", "cookie_secure":false}' | |
| KONG_ADMIN_ACCESS_LOG: "/dev/stdout" | |
| KONG_ADMIN_ERROR_LOG: "/dev/stderr" | |
| KONG_PORTAL: "on" | |
| KONG_PORTAL_AUTH: basic-auth | |
| KONG_PORTAL_API_URL: http://kong.plutarch.codectl.lab:8004 | |
| KONG_PORTAL_API_LISTEN: "0.0.0.0:8004, 0.0.0.0:8447 ssl" | |
| KONG_PORTAL_GUI_HOST: kong.plutarch.codectl.lab:8003 | |
| KONG_PORTAL_GUI_LISTEN: "0.0.0.0:8003, 0.0.0.0:8446 ssl" | |
| KONG_PORTAL_GUI_PROTOCOL: http | |
| KONG_PORTAL_SESSION_CONF: '{"storage": "kong", "secret": "mysecretpassword", "cookie_name": "portal_session", "cookie_samesite":"off", "cookie_secure": false}' | |
| KONG_PORTAL_EMAILS_REPLY_TO: [email protected] | |
| KONG_PORTAL_EMAILS_FROM: [email protected] | |
| KONG_LOG_LEVEL: debug | |
| KONG_AUDIT_LOG: "on" | |
| KONG_PG_HOST: postgres | |
| KONG_PG_USER: ${KONG_PG_USER:-kong} | |
| KONG_PG_PASSWORD: ${KONG_PG_PASSWORD:-kong} | |
| KONG_PG_DATABASE: ${KONG_PG_DATABASE:-kong} | |
| KONG_DATABASE: "postgres" | |
| KONG_VITALS_STRATEGY: influxdb | |
| KONG_VITALS_TSDB_ADDRESS: influxdb:8086 | |
| KONG_LUA_SSL_TRUSTED_CERTIFICATE: /usr/local/kong/certs/cluster.crt | |
| KONG_CLUSTER_CERT_KEY: /usr/local/kong/certs/cluster.key | |
| KONG_CLUSTER_CERT: /usr/local/kong/certs/cluster.crt | |
| KONG_PORTAL_API_ACCESS_LOG: "/dev/stderr" | |
| KONG_PORTAL_API_ERROR_LOG: "/dev/stderr" | |
| KONG_ANONYMOUS_REPORTS: "off" | |
| KONG_VITALS: "on" | |
| volumes: | |
| - 'certs:/usr/local/kong/certs:ro' | |
| ############################################################################### | |
| dp: | |
| hostname: dp | |
| container_name: dp | |
| image: kong/kong-gateway:2.4-alpine | |
| user: "${KONG_USER:-root}" | |
| restart: on-failure | |
| networks: | |
| - kong-ee | |
| depends_on: | |
| - cp | |
| - redis | |
| - certs | |
| - postgres | |
| - bootstrap | |
| ports: | |
| - 8080:8080 | |
| - 8443:8443 | |
| - 8100:8100 | |
| environment: | |
| KONG_ROLE: data_plane | |
| KONG_PORTAL: "off" | |
| KONG_DATABASE: "off" | |
| KONG_STATUS_LISTEN: 0.0.0.0:8100 | |
| KONG_PROXY_LISTEN: "0.0.0.0:8080, 0.0.0.0:8443 ssl" | |
| KONG_CLUSTER_CONTROL_PLANE: kong.plutarch.codectl.lab:8005 | |
| KONG_CLUSTER_TELEMETRY_ENDPOINT: kong.plutarch.codectl.lab:8006 | |
| KONG_LUA_SSL_TRUSTED_CERTIFICATE: /usr/local/kong/certs/cluster.crt | |
| KONG_CLUSTER_CERT_KEY: /usr/local/kong/certs/cluster.key | |
| KONG_CLUSTER_CERT: /usr/local/kong/certs/cluster.crt | |
| KONG_LICENSE_DATA: ${KONG_LICENSE_DATA} | |
| KONG_PROXY_ACCESS_LOG: "/dev/stdout" | |
| KONG_PROXY_ERROR_LOG: "/dev/stderr" | |
| KONG_LOG_LEVEL: debug | |
| KONG_AUDIT_LOG: "on" | |
| volumes: | |
| - 'certs:/usr/local/kong/certs:ro' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment