zoukankan      html  css  js  c++  java
  • Kong网关安装之Docker版(1)

    前言:

    Kong 是天生的微服务网关。她的官方简介是:Kong 是一个云原生,高效,可扩展的分布式 API 网关。 自 2015 年在 github 开源后,广泛受到关注,目前已收获 1.9w+ 的 star,其核心价值在于高性能和可扩展性。

    1. 数据库准备,拉取Postgresql镜像

    sudo docker pull daocloud.io/library/postgres:9.6.4
    备注:Postgresql不要太高,否则后面konga安装会报错
    

    2. 构建Postgresql容器:

    sudo docker run -d --name kong-db --network=mynetwork --ip 172.18.0.7 -p 5432:5432 -e "POSTGRES_USER=kong" -e "POSTGRES_DB=kong" -e "POSTGRES_PASSWORD=kong" -v /home/xujk/Work/Docker/Kong/db/pgdata:/var/lib/postgresql/data daocloud.io/library/postgres:9.6.4
    

    3. 初始化数据库设置

    docker run --rm --network=mynetwork -e "KONG_DATABASE=postgres" -e "KONG_PG_HOST=kong-db" -e "KONG_PG_PASSWORD=kong" -e "KONG_CASSANDRA_CONTACT_POINTS=kong-db" kong:latest kong migrations bootstrap
    

    4. 创建Kong容器(v2.0.2)

    docker run -d --name kong --network=mynetwork --ip 172.18.0.8 -e "KONG_DATABASE=postgres" 
     -e "KONG_PG_HOST=172.18.0.7" 
     -e "KONG_PG_PASSWORD=kong" 
     -e "KONG_CASSANDRA_CONTACT_POINTS=kong-db" 
     -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" 
     -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" 
     -e "KONG_PROXY_ERROR_LOG=/dev/stderr" 
     -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" 
     -e "KONG_ADMIN_LISTEN=0.0.0.0:8001, 0.0.0.0:8444 ssl" 
     -e "DNS_RESOLVER=172.18.0.16" 
     -p 8000:8000 
     -p 8443:8443 
     -p 8001:8001 
     -p 8444:8444 
     kong:latest
    
    注意:
    这个地方一定要设置为容器ip,不要用容器名:kong-db,否则设置dns的时候(consul),会出现很大问题,无意间解决的,应该是别名的时候,dns解析不过去
    还需要提醒的是,即使你参数里有 -e "DNS_RESOLVER=172.18.0.16",但是还是需要去修改配置文件,然后把配置文件copy到容器里,才会生效

    5. 容器与宿主机间拷贝文件方法:

    把kong容器的配置文件拷贝出来:
    docker cp kong:/etc/kong/kong.conf.default /home/xujk/Work/Docker/Kong/kong/conf
    
    把主机文件拷贝到容器中:
    docker cp /home/xujk/Work/Docker/Kong/kong/conf/kong.conf.default kong:/etc/kong/kong.conf.default
    
    重启容器生效,或者创建容器的时候挂载,因为前期没有挂载,所以要拷贝文件
    进入kong容器命令:
    docker exec -it kong /bin/sh
    
    查看已下载的Docker镜像latest具体版本:
    docker image inspect (docker image名称):latest|grep -i version
    docker image inspect kong:latest|grep -i version
    

    6. 测试kong网关是否成功:

    curl -i http://localhost:8001/services
    curl -i http://172.18.0.8:8001/services
    

  • 相关阅读:
    向表中添加列 ALTER TABLE ADD Column_name
    向表中添加列 ALTER TABLE ADD Column_name
    C#类和结构(C# 编程指南)
    C#类和结构(C# 编程指南)
    SQL大小写转换
    SQL大小写转换
    (最新)IIS Express发布网站,实现IP,域名访问站点
    (最新)IIS Express发布网站,实现IP,域名访问站点
    IIS Express允许外部访问(外部调试)
    IIS Express允许外部访问(外部调试)
  • 原文地址:https://www.cnblogs.com/kunwn/p/14544990.html
Copyright © 2011-2022 走看看