1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 阿里云服务器 CentOS 7上-- Docker 安装 网关(API-Getway)--KONG

阿里云服务器 CentOS 7上-- Docker 安装 网关(API-Getway)--KONG

时间:2021-01-01 16:12:19

相关推荐

阿里云服务器 CentOS 7上-- Docker 安装 网关(API-Getway)--KONG

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

全程操作按官方文档来就可以了。

1.将 Kong 连接到 Cassandra 或 PostgreSQL 容器

Kong支持 2 种数据库:Cassandra 或 PostgreSQL ,至于使用哪个完全 UP 2 U 。

执行以下命令启动Cassandra容器:

$ docker run -d --name kong-database \-p 9042:9042 \cassandra:3

通过执行以下命令来启动PostgreSQL容器:

docker run -d --name kong-database \-p 5432:5432 \-e "POSTGRES_USER=kong" \-e "POSTGRES_DB=kong" \postgres:9.5

我选择的是PostgreSQL,执行上述命令,如果当前环境没有对应镜像会自动从 Docker 仓库下载,直到这个命令执行完就可以查到这个镜像了,并且 kong-database容器也有了。

(Kong 要求 postgres 9.4 或更高版本,并且要对数据库作大版本号升级的话对新手来说挺复杂,所以个人建议新安装尽量不要装版本号过低的数据库。)

查看postgres 数据库的镜像和容器:

2.准备数据库

用一个 Kong 容器运行数据库迁移:

docker run --rm \--link kong-database:kong-database \-e "KONG_DATABASE=postgres" \-e "KONG_PG_HOST=kong-database" \-e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \kong kong migrations up

运行如下:

这时 Kong 的数镜像已有了:

3.对 Kong 进行自定义配置

您可以用环境变量覆盖Kong配置文件的任何属性。只需将KONG_前缀添加到任何Kong配置属性中,例如:

$ docker run -d --name kong \-e "KONG_DATABASE=postgres"-e "KONG_PG_HOST=kong-database" \-e "KONG_LOG_LEVEL=info" \-e "KONG_CUSTOM_PLUGINS=helloworld" \-e "KONG_PG_HOST=1.1.1.1" \-e "KONG_ADMIN_LISTEN=0.0.0.0:8001" \-e "KONG_ADMIN_LISTEN_SSL=0.0.0.0:8444" \-p 8000:8000 \-p 8443:8443 \-p 8001:8001 \-p 8444:8444 \kong

至此 Kong 已安装成功 :

我的 kong 装好启动后不久总是会自动退出,后来想到: KONG 是基于 nginx ,所以装好 nginx 。

docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx

运行后如下:

4. 安装 KONG 的图形化管理界面 kong-dashboard

Start Kong Dashboard 命令如下:docker run --rm -p 8080:8080 pgbi/kong-dashboard start --kong-url http://kong:8001

我在执行时给容器起了个比较好辨识的名字 :kong-dashboard

另外我的 kong 是安装在 IP 为 xx.xx.xx.8 的物理机上,所以把 IP 地址也对应的设置了。

执行命令最终为:

docker run --rm -p 8080:8080 --name kong-dashboard pgbi/kong-dashboard start --kong-url http://xx.xx.xx.8:8001

依旧会自动下载所需镜像,运行完成。

可以通过以下命令查看服务是否正常启动:

curl http://服务器内网IP:8080/status 这个大概是请求的是kong应用的界面。

curl http://服务器内网IP:8001/status这个大概是请求的是kong应用的接口。

最后成功访问到 UI 界面 :

备注:

1)如果遇到报错:

could not retrieve server_version: timeout

解决方法参见:Kong 启动报错解决

2)服务启动成功却在浏览器上始终访问不到界面,最后才想起是阿里云服务器上未开放端口8080。

开放端口 8080 就可以了。开放方法参见:阿里云服务器开放8080端口

参考Docker 官方文档:

/samples/library/kong/#kongversion

/r/pgbi/kong-dashboard/

/samples/library/nginx/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。