seataio/seata-server Docker Image
这是一款专为微服务架构打造的分布式事务解决方案,兼具高性能与易用性核心特性。在微服务架构中,跨服务事务的数据一致性管理常面临复杂挑战,该方案通过优化底层处理逻辑实现低延迟、高吞吐量的高性能表现,同时简化集成流程并提供直观操作接口,大幅降低开发者的学习与使用门槛,助力技术团队高效应对分布式环境下的事务协调需求,切实保障业务数据的准确性及系统运行的稳定性。
Seata Server
What is Seata
A distributed transaction solution with high performance and ease to use for microservices architecture.
Supported tags
The seata-server images are based on openjdk8
Quick Start
Start a seata-server instance
bash$ docker run -p 8091:8091 -p 7091:7091 --name=seata-server --restart=always -d seataio/seata-server:latest
Use custom configuration file
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_CONFIG_NAME=file:/root/seata-config/registry \ -v /PATH/TO/CONFIG_FILE:/root/seata-config \ seataio/seata-server
Specify server IP
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_IP=192.168.1.1 \ seataio/seata-server
More information about Seata could be found in Document
Docker compose
Example of docker-compose.yaml
yamlversion: "3.1" services: seata-server: image: seataio/seata-server:latest hostname: seata-server ports: - 8091:8091 - 7091:7091 environment: - SEATA_PORT=8091 expose: - 8091 - 7091
Container shell access and viewing logs
bash$ docker exec -it seata-server sh
bash$ docker logs -f seata-server
Using custom configuration file
The default configuration could be found under path /seata-server/resources, suggest that put your custom configuration under other directories. And the environment variableSEATA_CONFIG_NAME is required when use custom configuration, and the value must be started with file: like file:/root/seata-config/registry:
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_CONFIG_NAME=file:/root/seata-config/registry \ -v /PATH/TO/CONFIG_FILE:/root/seata-config \ seataio/seata-server
Environment Variables
You can modify configuration of seata-server by the environment variables like this:
- SEATA_IP
The variable is optional, specifies registry IP instead of the container IP in registry center like eureka or others.
- SEATA_PORT
The variable is optional, specifies seata-server port, default is
8091
- STORE_MODE
The variable is optional, specifies the log store mode of seata-server, support
dbandfile, default isfile.
- SERVER_NODE
The variable is optional, specifies the seata-server node ID, like
1,2,3..., default is1
- SEATA_ENV
The variable is optional, specifies the seata-server environment, like
dev,testetc. Then server will find file likeregistry-dev.confunder the configuration path when start.
- SEATA_CONFIG_NAME
The variable is optional, specifies the configuration file path, like the
file:/root/registry, will load file/root/registry.confas configuration.
Quick Reference
Where to get help
https://github.com/seata/seata | Seata Document | *** Seata | Dingtalk Group
Where to file issues
https://github.com/seata/seata/issues
什么是Seata
Seata 是高性能、易用的微服务架构的分布式事务解决方案.
快速开始
启动seata-server实例
bash$ docker run --name seata-server -p 8091:8091 -p 7091:7091 seataio/seata-server:latest
指定自定义配置文件启动
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_CONFIG_NAME=file:/root/seata-config/registry \ -v /PATH/TO/CONFIG_FILE:/root/seata-config \ seataio/seata-server
指定seata-server IP 启动
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_IP=192.168.1.1 \ seataio/seata-server
更多详细内容可以参考官方文档
Docker compose 启动
docker-compose.yaml 示例
yamlversion: "3.1" services: seata-server: image: seataio/seata-server:latest hostname: seata-server ports: - 8091:8091 - 7091:7091 environment: - SEATA_PORT=8091 expose: - 8091 - 7091
容器命令行及查看日志
bash$ docker exec -it seata-server sh
bash$ docker logs -f seata-server
使用自定义配置文件
The default configuration could be found under path /seata-server/resources, suggest that put your custom configuration under other directories. And the environment variableSEATA_CONFIG_NAME is required when use custom configuration, and the value must be started with file: like file:/root/seata-config/registry:
默认的配置文件路径为 /seata-server/resources,建议将自定义配置文件放到其他目录下; 使用自定义配置文件时必须指定环境变量 SEATA_CONFIG_NAME,并且环境变量的值需要以file:开始, 如: seata-config/registry
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_CONFIG_NAME=file:/root/seata-config/registry \ -v /PATH/TO/CONFIG_FILE:/root/seata-config \ seataio/seata-server
环境变量
seata-server 支持以下环境变量:
- SEATA_IP
可选,指定seata-server启动的IP,该IP用于向注册中心注册时使用,如eureka等.
- SEATA_PORT
可选,指定seata-server启动的端口,默认为
8091
- STORE_MODE
可选,指定seata-server的事务日志存储方式,支持
db和file, 默认是file.
- SERVER_NODE
可选,用于指定seata-server节点ID, 如
1,2,3..., 默认为1
- SEATA_ENV
可选,指定 seata-server 运行环境, 如
dev,test等. 服务启动时会使用registry-dev.conf这样的配置.
- SEATA_CONFIG_NAME
The variable is optional, specifies the configuration file path, like the
file:/root/registry, will load file/root/registry.confas configuration. 可选, 指定配置文件位置, 如file:/root/registry, 将会加载/root/registry.conf作为配置文件.
参考
联系我们
https://github.com/seata/seata | Seata 文档 | *** Seata | 钉钉群
提交反馈
https://github.com/seata/seata/issues
更多相关 Docker 镜像与资源
以下是 seataio/seata-server 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
镜像拉取方式
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
轩辕镜像加速拉取命令点我查看更多 seata-server 镜像标签
DockerHub 原生拉取命令
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务