欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用Docker安装Seata服务

程序员文章站 2022-06-21 17:07:24
...

1. 拉取seata服务的镜像(seata-seaver)

```
# 这里我们选择拉取1.2.0的版本,目前应该是最新的
docker pull seataio/seata-server:1.2.0
# 查看一下镜像,虽然没什么卵用
docker images
```
 
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200710111532238.png)如果出现这个就说明拉取镜像成功

2. 上传配置到配置中心

  • 因为我使用的是Nacos作为配置中心,所以现在要把配置上传到nacos,这个参照一下官网的上传方式就好了http://seata.io/zh-cn/docs/user/configurations.html,拉到下面发现有个标黄的地方给他展开。
    使用Docker安装Seata服务
  • 但是到这里可能并没什么卵用,因为我用的是docker(为什么是Docker呢,个人习惯吧,平时搭环境用docker会方便一点),不是下载的二进制文件,所以他这种方式弄不了。那么重点来了:我们简单讲一下上传原理,就是通过脚本读取配置文件里面的配置项,然后调用Nacos的Api来上传每一项配置(因为我用的是nacos,所以举例也用naocs,其他的注册中心原理一样)
  • 接下来我提供一下gtihub上的配置文件和脚本,上传的时候注意一下图片中的这个路径

3. 接下来启动镜像

```
# 启动seata-server服务
docker run --name seata-server -d \
    -p 8091:8091 \
    -e SEATA_CONFIG_NAME=file:/root/seata-config/registry \
	-e SEATA_IP=192.168.1.195 \
	-e SEATA_PORT=8091 \
    -v /usr/dvsc/seata1.2.0/registry.conf:/root/seata-config/registry.conf  \
	-v /usr/dvsc/seata1.2.0/logs:/root/logs \
    seataio/seata-server:1.2.0
```
`如果使用了注册中心,则会将SEATA_IP:SEATA_PORT这个地址注册到注册中心,如果不配置的话可能会找不到seata服务。`
-v 当前机器的路径:docker容器里面的路径,虽然大家都知道,但是以防忘记。
`registry.conf 的配置内容`
```
registry {
  	type = "nacos"
  	nacos {
    	application = "seata-server"
    	serverAddr = "192.168.1.191:5280"
    	namespace = "lp"
   	 	cluster = "DEFAULT"
  	}
}

config {
	type = "nacos"
	nacos {
		serverAddr = "192.168.1.191:5280"
		namespace = "seata"
		group = "DEFAULT_GROUP"
	}
}
```
  • 我这里使用了nacos做为配置中心和注册中心
  • 因为我这里挂载了日志目录,所以可以在宿主机查看日志,如果没有挂载,就使用docker logs 容器ID来查看日志
    如果看日志没有报错,那到这里seata的服务就算是起来了