如果直接使用以下的docker-compose 文件部署会有通过多播通信获取endpoint 异常的问题(circus 在stats endpoint 获取少了一个c)

version: "3"
services: 
  circus:
    image: dalongrong/circus:3.7-slim-stretch
    ports: 
    - "9999:9999"
    - "5555:5555"
    volumes: 
    - "./circus.ini:/app/circus.ini"
  circus-web:
    image: dalongrong/circusd-web:2.7-slim-stretch
    ports:
    - "8080:8080"

一种简单的解决方法

  • 配置web 的时候明确指定endpoint
    方法不是很好,但是可以解决问题
    支持的参数如下:
usage: circushttpd [-h] [--fd FD] [--host HOST] [--port PORT]
                   [--endpoint ENDPOINT] [--version]
                   [--log-level {info,debug,critical,warning,error,INFO,DEBUG,CRITICAL,WARNING,ERROR}]
                   [--log-output LOGOUTPUT] [--ssh SSH]
                   [--multicast MULTICAST]
Run the Web Console
optional arguments:
  -h, --help show this help message and exit
  --fd FD FD
  --host HOST Host
  --port PORT port
  --endpoint ENDPOINT Circus Endpoint. If not specified, Circus will ask you
                        which system you want to connect to
  --version Displays Circus version and exits.
  --log-level {info,debug,critical,warning,error,INFO,DEBUG,CRITICAL,WARNING,ERROR}
                        log level
  --log-output LOGOUTPUT
                        log output
  --ssh SSH SSH Server
  --multicast MULTICAST
                        Multicast endpoint. If not specified, Circus will use
                        default one
 
  • 修改下docker-compose circus service name
    修改格式如下:
 
version: "3"
services: 
  appcircus:
    image: dalongrong/circus:3.7-slim-stretch
    ports: 
    - "9999:9999"
    - "5555:5555"
    volumes: 
    - "./circus.ini:/app/circus.ini"
  circus-web:
    image: dalongrong/circusd-web:2.7-slim-stretch
    ports:
    - "8080:8080"

重新连接效果

从下图看出,获取的额信息正常,这样通信信息也就能显示了
circus  && web comsole docker-compose 独立部署web console 的一个bug-LMLPHP

参考资料

https://github.com/rongfengliang/circus-docker-compose
https://github.com/circus-tent/circus-web
https://circus.readthedocs.org/

05-17 16:05