如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
SeaTunnel is a very easy-to-use, ultra-high-performance, distributed data integration platform that supports real-time synchronization of massive data. It can synchronize tens of billions of data stably and efficiently every day, and has been used in production by nearly 100 companies.
Download
shelldocker pull apache/seatunnel:<version_tag>
How to submit job in local mode
shell# Run fake source to console sink docker run --rm -it apache/seatunnel:<version_tag> ./bin/seatunnel.sh -m local -c config/v2.batch.config.template # Run job with custom config file docker run --rm -it -v /<The-Config-Directory-To-Mount>/:/config apache/seatunnel:<version_tag> ./bin/seatunnel.sh -m local -c /config/fake_to_console.conf # Example # If you config file is in /tmp/job/fake_to_console.conf docker run --rm -it -v /tmp/job/:/config apache/seatunnel:<version_tag> ./bin/seatunnel.sh -m local -c /config/fake_to_console.conf # Set JVM options when running docker run --rm -it -v /tmp/job/:/config apache/seatunnel:<version_tag> ./bin/seatunnel.sh -DJvmOption="-Xms4G -Xmx4G" -m local -c /config/fake_to_console.conf
there has 2 ways to create cluster within docker.
create a network
shelldocker network create seatunnel-network
start the nodes
shell## start master and export 5801 port docker run -d --name seatunnel_master \ --network seatunnel-network \ --rm \ -p 5801:5801 \ apache/seatunnel \ ./bin/seatunnel-cluster.sh -r master
shelldocker inspect seatunnel_master
run this command to get the pod ip.
shell# you need update yourself master container ip to `ST_DOCKER_MEMBER_LIST` docker run -d --name seatunnel_worker_1 \ --network seatunnel-network \ --rm \ -e ST_DOCKER_MEMBER_LIST=172.18.0.2:5801 \ apache/seatunnel \ ./bin/seatunnel-cluster.sh -r worker ## start worker2 # you need update yourself master container ip to `ST_DOCKER_MEMBER_LIST` docker run -d --name seatunnel_worker_2 \ --network seatunnel-network \ --rm \ -e ST_DOCKER_MEMBER_LIST=172.18.0.2:5801 \ apache/seatunnel \ ./bin/seatunnel-cluster.sh -r worker
Scale your Cluster
run this command to start master node.
shell# you need update yourself master container ip to `ST_DOCKER_MEMBER_LIST` docker run -d --name seatunnel_master \ --network seatunnel-network \ --rm \ -e ST_DOCKER_MEMBER_LIST=172.18.0.2:5801 \ apache/seatunnel \ ./bin/seatunnel-cluster.sh -r master
run this command to start worker node.
shell# you need update yourself master container ip to `ST_DOCKER_MEMBER_LIST` docker run -d --name seatunnel_worker_1 \ --network seatunnel-network \ --rm \ -e ST_DOCKER_MEMBER_LIST=172.18.0.2:5801 \ apache/seatunnel \ ./bin/seatunnel-cluster.sh -r worker
docker cluster mode is only support zeta engine.
The docker-compose.yaml file is :
yamlversion: '3.8' services: master: image: apache/seatunnel container_name: seatunnel_master environment: - ST_DOCKER_MEMBER_LIST=172.16.0.2,172.16.0.3,172.16.0.4 entrypoint: > /bin/sh -c " /opt/seatunnel/bin/seatunnel-cluster.sh -r master " ports: - "5801:5801" networks: seatunnel_network: ipv4_address: 172.16.0.2 worker1: image: apache/seatunnel container_name: seatunnel_worker_1 environment: - ST_DOCKER_MEMBER_LIST=172.16.0.2,172.16.0.3,172.16.0.4 entrypoint: > /bin/sh -c " /opt/seatunnel/bin/seatunnel-cluster.sh -r worker " depends_on: - master networks: seatunnel_network: ipv4_address: 172.16.0.3 worker2: image: apache/seatunnel container_name: seatunnel_worker_2 environment: - ST_DOCKER_MEMBER_LIST=172.16.0.2,172.16.0.3,172.16.0.4 entrypoint: > /bin/sh -c " /opt/seatunnel/bin/seatunnel-cluster.sh -r worker " depends_on: - master networks: seatunnel_network: ipv4_address: 172.16.0.4 networks: seatunnel_network: driver: bridge ipam: config: - subnet: 172.16.0.0/24
run docker-compose up -d command to start the cluster.
You can use docker logs -f seatunne_master, docker logs -f seatunnel_worker_1 to check the node log.
And when you call http://localhost:5801/hazelcast/rest/maps/system-monitoring-information, you will see there are 2 nodes as we excepted.
After that, you can use client or restapi to submit job to this cluster.
Scale your Cluster
If you want to increase cluster node, like add a new work node.
yamlversion: '3.8' services: master: image: apache/seatunnel container_name: seatunnel_master environment: - ST_DOCKER_MEMBER_LIST=172.16.0.2,172.16.0.3,172.16.0.4 entrypoint: > /bin/sh -c " /opt/seatunnel/bin/seatunnel-cluster.sh -r master " ports: - "5801:5801" networks: seatunnel_network: ipv4_address: 172.16.0.2 worker1: image: apache/seatunnel container_name: seatunnel_worker_1 environment: - ST_DOCKER_MEMBER_LIST=172.16.0.2,172.16.0.3,172.16.0.4 entrypoint: > /bin/sh -c " /opt/seatunnel/bin/seatunnel-cluster.sh -r worker " depends_on: - master networks: seatunnel_network: ipv4_address: 172.16.0.3 worker2: image: apache/seatunnel container_name: seatunnel_worker_2 environment: - ST_DOCKER_MEMBER_LIST=172.16.0.2,172.16.0.3,172.16.0.4 entrypoint: > /bin/sh -c " /opt/seatunnel/bin/seatunnel-cluster.sh -r worker " depends_on: - master networks: seatunnel_network: ipv4_address: 172.16.0.4 #### ## add new worker node #### worker3: image: apache/seatunnel container_name: seatunnel_worker_3 environment: - ST_DOCKER_MEMBER_LIST=172.16.0.2,172.16.0.3,172.16.0.4,172.16.0.5 # add ip to here entrypoint: > /bin/sh -c " /opt/seatunnel/bin/seatunnel-cluster.sh -r worker " depends_on: - master networks: seatunnel_network: ipv4_address: 172.16.0.5 # use a not used ip networks: seatunnel_network: driver: bridge ipam: config: - subnet: 172.16.0.0/24
and run docker-compose up -d command, the new worker node will start, and the current node won't restart.
use docker as a client
shell# you need update yourself master container ip to `ST_DOCKER_MEMBER_LIST` docker run --name seatunnel_client \ --network seatunnel-network \ -e ST_DOCKER_MEMBER_LIST=172.18.0.2:5801 \ --rm \ apache/seatunnel \ ./bin/seatunnel.sh -c config/v2.batch.config.template
shell# you need update yourself master container ip to `ST_DOCKER_MEMBER_LIST` docker run --name seatunnel_client \ --network seatunnel-network \ -e ST_DOCKER_MEMBER_LIST=172.18.0.2:5801 \ --rm \ apache/seatunnel \ ./bin/seatunnel.sh -l
more command please refer user-command
use rest api
please refer Submit A Job
以下是 apache/seatunnel 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

来自真实用户的反馈,见证轩辕镜像的优质服务