kong的配置项 都可以用环境变量!!!!!!! 前面加KONG_就好了
数据是不跑在k8s上的,生产环境可以直接用阿里云的pgsql
两个库,初始化kong之后,再创建一个konga的库
docker run --name postgresql -p 5432:5432 -v /opt/postgresql/:/var/lib/postgresql/data -e "POSTGRES_USER=kong" -e "POSTGRES_DB=kong" -e "MYSQL_ROOT_PASSWORD=kong123" -d postgres
可以先sleep大法 sleep 999999999 启动服务之后
进去kong migrations bootstrap 建表
apiVersion: apps/v1beta2
kind: Deployment
metadata:
labels:
app: kong
name: kong
spec:
replicas: 1
selector:
matchLabels:
app: kong
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
labels:
app: kong
spec:
containers:
- env:
- name: KONG_SHA256
value: 3f07c30c6902ec0dd17e9777f5f479076c65c634b677402072414ca9d31dc810
- name: KONG_ADMIN_LISTEN
value: '0.0.0.0:8001, 0.0.0.0:8444 ssl'
- name: KONG_PG_PASSWORD
value: kong123
- name: KONG_PG_HOST
value: "172.27.83.50"
- name: KONG_PROXY_ACCESS_LOG
value: /dev/stdout
- name: KONG_ADMIN_ACCESS_LOG
value: /dev/stdout
- name: KONG_PROXY_ERROR_LOG
value: /dev/stderr
- name: KONG_ADMIN_ERROR_LOG
value: /dev/stderr
- name: KONG_NGINX_DAEMON
value: 'off'
- name: KONG_PG_PORT
value: '5432'
- name: KONG_PG_USER
value: kong
- name: KONG_PG_DATABASE
value: kong
image: 'kong:latest'
imagePullPolicy: Always
name: kong
ports:
- containerPort: 8000
protocol: TCP
- containerPort: 8001
protocol: TCP
- containerPort: 8443
protocol: TCP
- containerPort: 8444
protocol: TCP
resources:
requests:
cpu: 250m
memory: 512Mi
---
apiVersion: v1
kind: Service
metadata:
name: kong
spec:
ports:
- name: kong-80-8000
port: 80
protocol: TCP
targetPort: 8000
- name: kong-443-8443
port: 443
protocol: TCP
targetPort: 8443
- name: kong-8001-8001
port: 8001
protocol: TCP
targetPort: 8001
- name: kong-8444-8444
port: 8444
protocol: TCP
targetPort: 8444
selector:
app: kong
图形化管理界面 konga和kong-dashboard 选择了konga。 - -官方的要企业版哎
GitHub地址:https://github.com/pantsel/konga
NODE_ENV要先development 会建表
apiVersion: apps/v1beta2
kind: Deployment
metadata:
labels:
app: konga
name: konga
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app: konga
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
labels:
app: konga
spec:
containers:
- env:
- name: NODE_ENV
value: development #开发模式会建表~
- name: DB_ADAPTER
value: postgres
- name: DB_HOST
value: 172.27.83.50
- name: DB_PORT
value: '5432'
- name: DB_USER
value: kong
- name: DB_PASSWORD
value: kong123
- name: DB_DATABASE
value: konga
image: 'pantsel/konga:latest'
imagePullPolicy: Always
name: konga
resources:
requests:
cpu: 250m
memory: 512Mi
---
apiVersion: v1
kind: Service
metadata:
name: konga
spec:
ports:
- name: http
port: 1337
protocol: TCP
targetPort: 1337
nodePort: 32000
type: NodePort
selector:
app: konga
然后打开浏览器~~~~连接kong就好了
插件还是蛮多的,目前用到file-log日志插件,输出到控制台
我就先基础的转发path到后端~ 深入的有待研究~