ceryx动态路由配置

近期在安装Docker Swarm集群,考虑到一个个服务都需要进行域名映射实在麻烦,于是开始查找相应的方案,在综合实验Traefik和Docker Flower Proxy后发现都不是特别方便,特别是有些测试的组合容器有多个服务的情况下。还是手工改写nginx可控性更加适合。寻找nginx的动态路由,一般都是通过lua来实现,突然发现一个整合好的,并且有Web管理界面可以使用,Ceryx登场。
Ceryx GitHub
Ceryx Web GitHub
参考两个网站上的脚本,整合了一个在Portainer上使用的yml

version: '2'

services:
  ceryx:
    image: sourcelair/ceryx:latest
    ports:
      - 80:80
      - 443:443
    depends_on:
      - redis
    environment:
      - CERYX_DISABLE_LETS_ENCRYPT=false
      - CERYX_DOCKERIZE_EXTRA_ARGS=-no-overwrite
      - CERYX_REDIS_HOST=redis
      - CERYX_REDIS_PORT=6379
    command:
      - usr/local/openresty/bin/openresty
      - -g
      - daemon off;
      
  api:
    image: sourcelair/ceryx-api:latest
    depends_on:
      - redis
      - ceryx
    environment:
      - CERYX_API_HOST=0.0.0.0
      - CERYX_API_HOSTNAME=localhost
      - CERYX_API_PORT=5555
      - CERYX_DEBUG=false
      - CERYX_REDIS_HOST=redis
      - CERYX_REDIS_PORT=6379
      
  redis:
    image: redis:3.2.11-alpine
     
  web:
    image: paris/ceryx-web:latest
    depends_on:
      - redis
      - ceryx
      - api
    ports:
      - 5000:5000
    environment:
      - CERYX_API_HOST=http://api:5555

networks:
  default:
    attachable: true
    driver: overlay
    name: ceryx


然后通过页面管理即可


ceryx动态路由配置_第1张图片
TIM截图20190301123024.png

你可能感兴趣的:(ceryx动态路由配置)