简体字丶冯|服务网关kong-docker安装
作为一名技术探索者,想了解一个未知系统的最有效方法就是去用。然而搭建一个陌生系统的最快捷方法莫过于docker,所以从docker开始。
实验环境
- 系统环境:centos7
- docker version:18.09.0
安装
- 为kong创建专用网络
#创建
$ docker network create kong-net
#查看
$ docker network ls
- 安装kong用的数据库
kong官方提供两种数据存储方案,我选择用postgresql。
$ docker run -d --name kong-database \
--network=kong-net \
-p 5432:5432 \
-e "POSTGRES_USER=kong" \
-e "POSTGRES_DB=kong" \
postgres:9.6
docker 参数大概解释下:
--network : 指定kong网络使用刚才定义的专用网络
-p 5432:5432 :端口dockers的端口映射,postgresql数据库默认的端口是5432
-e : 设置了两个环境变量,是postgresql数据库的登陆用户与数据库名
注意每个''前边都有个空格,在这踩个坑。
- 在postgresql数据库中初始化kong数据
$ docker run --rm \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
kong:latest kong migrations bootstrap
参数:
docker中的 '--rm' 是容器运行结束删除容器,剩下三个参数同上。
- 运行kong容器
$ docker run -d --name kong \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=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 \
kong:latest
参数:主要是设置了网络环境变量(kong配置数据库、日志、监听端口),端口主机端口映射。
如图就是安装成功了
- 测试
$ curl -i http://localhost:8001/
小结:
kong是依赖一个数据库持久化的,所以安装过程中主要就是数据库安装以及初始化,再者就是kong的一些常规配置。如果不用docker安装也就主要是这几方面着手。
接下里需要安装一个ui工具来可视化体验!go on!