我们上一篇已经准备好了相应的镜像,现在我们准备安装。
您需要创建一个自定义网络,以允许容器相互发现和通信。在此示例中kong-net是网络名称,您可以使用任何名称。
$ docker network create kong-net
$ docker run -d --name kong-database --network=kong-net -p 9042:9042 cassandra:3
$ docker run -d --name kong-database --network=kong-net -p 5432:5432 -e "POSTGRES_USER=kong" -e "POSTGRES_DB=kong" -e "POSTGRES_PASSWORD=123456" 127.0.0.1:5000/postgres
$ docker run --rm --network=kong-net -e "KONG_DATABASE=postgres" -e "KONG_PG_HOST=kong-database" -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" -e "KONG_PG_PASSWORD=123456" 127.0.0.1:5000/kong kong migrations bootstrap
迁移运行并且数据库准备就绪后,启动一个将连接到数据库容器的Kong容器,就像临时迁移容器一样:
$ docker run -d --name kong --network=kong-net -e "KONG_DATABASE=postgres" -e "KONG_PG_HOST=kong-database" -e "KONG_PG_PASSWORD=123456" -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" -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" -p 8000:8000 -p 8443:8443 -p 8001:8001 -p 8444:8444 127.0.0.1:5000/kong
Kong正在运行:
$ curl -i http://localhost:8001/
注意DB_HOST为自己的ip地址
$ docker run -p 1337:1337 --network kong-net -e "TOKEN_SECRET=mark666" -e "DB_ADAPTER=postgres" -e "DB_HOST=1.6.1.1" -e "DB_PORT=5432:5432" -e "DB_USER=kong" -e "DB_PASSWORD=123456" -e "DB_DATABASE=kong_database" --name konga 127.0.0.1:5000/konga