docker-compose搭建kong、konga步骤

  1. 编辑docker-compse.yml文件
vim docker-compose.yml
  1. 粘贴以下内容至文件
version: "3.8"

networks:
 kong-net:
  driver: bridge

services:
  # 为kong创建数据库 postgres
  kong-database:
    image: postgres:9.6
    restart: always
    networks:
      - kong-net
    environment:
      POSTGRES_USER: root
      POSTGRES_DB: kong
      POSTGRES_PASSWORD: 123456
      TZ: Asia/Shanghai
    ports:
      - "5432:5432"
    healthcheck:
      test: ["CMD", "pg_isready", "-U", "kong"]
      interval: 5s
      timeout: 5s
      retries: 5

  # 为kong数据库初始化
  kong-migration:
    image: kong:2.4.1
    command:  "kong migrations bootstrap"
    networks:
      - kong-net
    restart: on-failure
    environment:
      KONG_PG_HOST: kong-database
      KONG_DATABASE: postgres
      KONG_PG_USER: root
      KONG_PG_PASSWORD: 123456
    links:
      - kong-database
    depends_on:
      - kong-database

  # 启动kong
  kong:
    image: kong:2.4.1
    restart: always
    networks:
      - kong-net
    environment:
      KONG_PG_HOST: kong-database
      KONG_DATABASE: postgres
      KONG_PG_USER: root
      KONG_PG_PASSWORD: 123456
      KONG_CASSANDRA_CONTACT_POINTS: kong-database
      KONG_PROXY_LISTEN: 0.0.0.0:8000
      KONG_PROXY_LISTEN_SSL: 0.0.0.0:8443
      KONG_ADMIN_LISTEN: 0.0.0.0:8001
      TZ: Asia/Shanghai
    depends_on:
      - kong-migration
      - kong-database
    healthcheck:
      test: ["CMD", "curl", "-f", "http://kong:8001"]
      interval: 5s
      timeout: 2s
      retries: 15
    ports:
      - "8001:8001"
      - "8000:8000"
      - "8443:8443"
      - "8444:8444"
  # Konga数据库初始化
  monga-prepare:
    image: pantsel/konga
    command: "-c prepare -a postgres -u postgresql://root:123456@kong-database:5432/konga"
    networks:
      - kong-net
    restart: on-failure
    links:
      - kong-database
    depends_on:
      - kong-database

  # Konga: 启动
  konga:
    image: pantsel/konga
    restart: always
    networks:
        - kong-net
    environment:
      DB_ADAPTER: postgres
      DB_URI: postgres://root:123456@kong-database:5432/konga
      NODE_ENV: production
      TZ: Asia/Shanghai
    depends_on:
      - kong-database
    ports:
      - "1337:1337"

  1. 创建启动脚本
vim start.sh
  1. 粘贴以下内容至文件
#使用说明,用来提示输入参数
usage() {
	echo "Usage: sh 执行脚本.sh [init|start|stop|rm]"
	exit 1
}

init(){
	docker-compose up -d 
}

start(){
	docker-compose up -d kong-database kong konga
}

#关闭所有模块
stop(){
	docker-compose stop
}

#删除所有模块
rm(){
	docker-compose rm
}

#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"init")
	init
;;
"start")
	start
;;
"stop")
	stop
;;
"rm")
	rm
;;
*)
	usage
;;
esac


  1. 授权
chmod +x start.sh
  1. 操作相关命令
#初始化
./start.sh init
#停止
./start.sh stop
#删除
./start.sh rm
#启动
./start.sh start
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值