tessera容器运行需要哪些依赖?
软件: tessera
Tessera容器运行的核心依赖
1. 基础运行环境依赖
Docker环境:Tessera官方推荐通过Docker容器部署(如Quorum生态中的Tessera隐私模块),需提前安装Docker并配置好Docker Compose(可选,用于编排多容器)。
JDK 11+:Tessera Java版本的服务端组件(如tessera-app-*.jar)需要JDK 11及上面版本支持(Ubuntu系统可通过sudo apt install openjdk-11-jre-headless安装)。
2. 配置文件依赖
Tessera配置文件:需创建JSON格式的配置文件(如tessera_config.json),包含以下关键配置项:

通信模式:mode(如orion、p2p)、communicationType(如REST);
服务器地址:serverAddress(如http://容器IP:9000);
数据库配置:jdbc(用户名、密码、URL,如MySQL或H2数据库);
节点密钥:keys(私钥路径privateKeyPath、公钥路径publicKeyPath,需挂载到容器内或生成在容器内目录);
对等节点:peer(其他Tessera节点的URL列表,用于节点间通信)。
3. 密钥文件依赖
节点密钥对:Tessera通过非对称加密实现隐私交易,需提前生成密钥对(*.key私钥、*.pub公钥)。密钥文件需挂载到容器内的指定路径(如/home/data/node_key*.key),若未挂载则容器无法读取密钥,导致服务启动失败。
4. 数据存储依赖
数据目录挂载:需将容器内的数据目录(如/home/data,用于存储密钥、数据库文件等)挂载到宿主机目录,确保数据持久化(避免容器重启后数据丢失)。
5. 数据库依赖(可选但推荐)
外部数据库:Tessera支持连接外部数据库(如MySQL、H2),需配置数据库的username、password、url(如jdbc:mysql://宿主机IP:3506/besu),并开启autoCreateTables(自动创建表结构)。若使用H2内存数据库,则无需额外配置数据库服务。
6. 网络配置依赖
容器网络:若Tessera节点分布在不同容器中,需确保容器处于同一Docker网络(如--network besu_swarm),并通过容器IP或网络别名访问其他节点(如peer配置中的URL)。
上面依赖涵盖了Tessera容器运行的核心条件,缺少任一环节均可能导致服务无法正常启动。实际部署时需根据具体场景(如单机测试、集群部署)调整配置细节。
1. 基础运行环境依赖
Docker环境:Tessera官方推荐通过Docker容器部署(如Quorum生态中的Tessera隐私模块),需提前安装Docker并配置好Docker Compose(可选,用于编排多容器)。
JDK 11+:Tessera Java版本的服务端组件(如tessera-app-*.jar)需要JDK 11及上面版本支持(Ubuntu系统可通过sudo apt install openjdk-11-jre-headless安装)。
2. 配置文件依赖
Tessera配置文件:需创建JSON格式的配置文件(如tessera_config.json),包含以下关键配置项:

通信模式:mode(如orion、p2p)、communicationType(如REST);
服务器地址:serverAddress(如http://容器IP:9000);
数据库配置:jdbc(用户名、密码、URL,如MySQL或H2数据库);
节点密钥:keys(私钥路径privateKeyPath、公钥路径publicKeyPath,需挂载到容器内或生成在容器内目录);
对等节点:peer(其他Tessera节点的URL列表,用于节点间通信)。
3. 密钥文件依赖
节点密钥对:Tessera通过非对称加密实现隐私交易,需提前生成密钥对(*.key私钥、*.pub公钥)。密钥文件需挂载到容器内的指定路径(如/home/data/node_key*.key),若未挂载则容器无法读取密钥,导致服务启动失败。
4. 数据存储依赖
数据目录挂载:需将容器内的数据目录(如/home/data,用于存储密钥、数据库文件等)挂载到宿主机目录,确保数据持久化(避免容器重启后数据丢失)。
5. 数据库依赖(可选但推荐)
外部数据库:Tessera支持连接外部数据库(如MySQL、H2),需配置数据库的username、password、url(如jdbc:mysql://宿主机IP:3506/besu),并开启autoCreateTables(自动创建表结构)。若使用H2内存数据库,则无需额外配置数据库服务。
6. 网络配置依赖
容器网络:若Tessera节点分布在不同容器中,需确保容器处于同一Docker网络(如--network besu_swarm),并通过容器IP或网络别名访问其他节点(如peer配置中的URL)。
上面依赖涵盖了Tessera容器运行的核心条件,缺少任一环节均可能导致服务无法正常启动。实际部署时需根据具体场景(如单机测试、集群部署)调整配置细节。
