apache/seata-server Docker Image
Apache Seata是一款开源的分布式事务解决方案,致力于为微服务架构提供高性能、简单易用的分布式事务服务,支持AT、TCC、SAGA和XA四种事务模式,能够帮助开发者快速解决分布式系统中的数据一致性问题,具备良好的兼容性与可扩展性,适用于各类微服务场景,由Apache软件基金会孵化并维护,拥有活跃的社区支持。
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 apache/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 \ apache/seata-server
Specify server IP
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_IP=192.168.1.1 \ apache/seata-server
More information about Seata could be found in https://seata.apache.org
Docker compose
Example of docker-compose.yaml
yamlversion: "3.1" services: seata-server: image: apache/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 \ apache/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/apache/incubator-seata | https://seata.apache.org | Dingtalk Group
Where to file issues
https://github.com/apache/incubator-seata/issues
什么是Seata
Seata 是高性能、易用的微服务架构的分布式事务解决方案.
快速开始
启动seata-server实例
bash$ docker run --name seata-server -p 8091:8091 -p 7091:7091 apache/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 \ apache/seata-server
指定seata-server IP 启动
bash$ docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_IP=192.168.1.1 \ apache/seata-server
更多详细内容可以参考https://seata.apache.org/
Docker compose 启动
docker-compose.yaml 示例
yamlversion: "3.1" services: seata-server: image: apache/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 \ apache/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/apache/incubator-seata | https://seata.apache.org | 钉钉群
提交反馈
https://github.com/apache/incubator-seata/issues
镜像拉取方式
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
轩辕镜像加速拉取命令点我查看更多 seata-server 镜像标签
DockerHub 原生拉取命令
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务