netflix conductor 学习(一)docker-compose 运行
为了方便学习以及使用netflix conductor 基于官方的dockerfile,构建了server 以及ui 的容器镜像并push dockerhub
环境准备
- 官方docker-compose文件
需要基于容器的构建很慢
version: '2.3'
services:
conductor-server:
environment:
- CONFIG_PROP=config.properties
image: conductor:server
build:
context: ../
dockerfile: docker/server/Dockerfile
networks:
- internal
ports:
- 8080:8080
links:
- elasticsearch:es
- dynomite:dyno1
depends_on:
elasticsearch:
condition: service_healthy
dynomite:
condition: service_healthy
logging:
driver: "json-file"
options:
max-size: "1k"
max-file: "3"
conductor-ui:
environment:
- WF_SERVER=http://conductor-server:8080/api/
image: conductor:ui
build:
context: ../
dockerfile: docker/ui/Dockerfile
networks:
- internal
ports:
- 5000:5000
links:
- conductor-server
dynomite:
image: v1r3n/dynomite
networks:
- internal
ports:
- 8102:8102
healthcheck:
test: timeout 5 bash -c 'cat < /dev/null > /dev/tcp/localhost/8102'
interval: 5s
timeout: 5s
retries: 12
logging:
driver: "json-file"
options:
max-size: "1k"
max-file: "3"
# https://www.elastic.co/guide/en/elasticsearch/reference/5.6/docker.html
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:5.6.8
environment:
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- transport.host=0.0.0.0
- discovery.type=single-node
- xpack.security.enabled=false
networks:
- internal
ports:
- 9200:9200
- 9300:9300
healthcheck:
test: timeout 5 bash -c 'cat < /dev/null > /dev/tcp/localhost/9300'
interval: 5s
timeout: 5s
retries: 12
logging:
driver: "json-file"
options:
max-size: "1k"
max-file: "3"
networks:
internal:
- 构建push dockerhub && 修改的docker-compose 文件
version: '3'
services:
conductor-server:
environment:
- CONFIG_PROP=config.properties
image: dalongrong/conductor:server
volumes:
- "./config.properties:/app/config/config.properties"
networks:
- internal
ports:
- 8080:8080
conductor-ui:
environment:
- WF_SERVER=http://conductor-server:8080/api/
image: dalongrong/conductor:ui
networks:
- internal
ports:
- 5000:5000
dynomite:
image: v1r3n/dynomite
networks:
- internal
ports:
- 8102:8102
healthcheck:
test: timeout 5 bash -c 'cat < /dev/null > /dev/tcp/localhost/8102'
interval: 5s
timeout: 5s
retries: 12
# https://www.elastic.co/guide/en/elasticsearch/reference/5.6/docker.html
elasticsearch:
image: elasticsearch:5.6.8
environment:
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- transport.host=0.0.0.0
- discovery.type=single-node
- xpack.security.enabled=false
networks:
- internal
ports:
- 9200:9200
- 9300:9300
networks:
internal:
- 配置修改
为了测试使用的memery 模式
启动&&效果
- 启动
docker-compose up -d
- 效果
es
ui
swagger api
workflow 图形
说明
以上只是简单的基本环境运行,后边会详细学习task 以及workflow 的定义以及使用
参考资料
https://netflix.github.io/conductor
https://github.com/Netflix/conductor/blob/master/docker/docker-compose.yaml
https://github.com/rongfengliang/netflix-conductor-docker-compose
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2018-08-16 ringojs 基于jvm 的javascript 平台试用