本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

Infinispan Server Docker 镜像提供了便捷的方式在容器环境中部署和运行 Infinispan 服务器,支持快速启动、灵活的认证配置、集群部署及调试功能,适用于开发和生产环境中的分布式数据存储需求。
在本地机器上启动 Infinispan 服务器,只需执行:
docker run -p 11222:11222 infinispan/server
或
podman run --net=host -p 11222:11222 infinispan/server
使用 podman 时,如果不以
sudo执行,必须传递--net=host参数。
默认情况下,镜像在所有暴露的端点上启用认证。执行上述命令时,镜像会自动生成具有“admin”角色的用户名/密码组合,打印到标准输出,然后启动 Infinispan 服务器,在 11222 端口暴露经过认证的 Hotrod 和 Rest 端点。因此,通过客户端访问端点时需使用打印的凭据。
也可通过环境变量提供 admin 用户名/密码组合:
docker run -p 11222:11222 -e USER="admin" -e PASS="changeme" infinispan/server
建议仅在初始开发中使用自动生成的凭据或 USER & PASS 环境变量。通过 Identities Batch 文件 提供认证和授权配置可实现更精细的控制。
连接 HotRod 客户端到镜像时,客户端必须配置以下 SASL 属性(根据实际情况修改用户名和密码):
infinispan.client.hotrod.auth_username=admin infinispan.client.hotrod.auth_password=changme infinispan.client.hotrod.sasl_mechanism=DIGEST-MD5
可通过 IDENTITIES_BATCH 环境变量定义用户身份和角色。该文件中的所有 CLI 命令在服务器启动前执行,仅支持离线命令(如包含 create cache ... 等需连接服务器的命令将导致容器启动失败)。
Infinispan 为部分用户提供隐式角色。查看 Infinispan 文档 了解更多隐式角色和授权信息。
以下是定义四个用户及其角色的示例 identities.batch 文件:
user create "Alan Shearer" -p "striker9" -g admin user create "observer" -p "secret1" user create "deployer" -p "secret2" user create "Rigoberta Baldini" -p "secret3" -g monitor
使用本地 identities.batch 文件运行镜像:
docker run -v $(pwd):/user-config -e IDENTITIES_BATCH="/user-config/identities.batch" -p 11222:11222 infinispan/server
Infinispan 镜像将所有容器参数传递给服务器,因此可像非容器化部署一样配置服务器。
创建并挂载 docker volume,使用本地配置文件 my-infinispan-config.xml 运行镜像:
docker run -v $(pwd):/user-config -e IDENTITIES_BATCH="/user-config/identities.batch" -p 11222:11222 infinispan/server -c /user-config/my-infinispan-config.xml
在 Kubernetes 等托管环境中,需使用 JGroups DNS_PING 协议进行节点发现。配置 kubernetes 堆栈并设置 jgroups.dnsPing.query 属性:
docker run -v $(pwd):/user-config infinispan/server --bind-address=0.0.0.0 -Dinfinispan.cluster.stack=kubernetes -Djgroups.dns.query="infinispan-dns-ping.myproject.svc.cluster.local"
通过 JAVA_OPTIONS 环境变量提供 Java 属性和 JVM 选项。例如快速配置 CORS:
docker run -e JAVA_OPTIONS="-Dinfinispan.cors.enableAll=[***]" infinispan/server
使用 SERVER_LIBS 环境变量将 artifacts 部署到服务器 lib 目录。例如添加 PostgreSQL JDBC 驱动:
docker run -e SERVER_LIBS="org.postgresql:postgresql:42.3.1" infinispan/server
SERVER_LIBS 支持多个空格分隔的 artifacts(URL 或 Maven 坐标),.tar、.tar.gz 或 .zip 格式的归档文件将被自动提取。参考 CLI install 命令帮助了解更多参数。
设置 DEBUG=TRUE 环境变量可调试镜像配置和启动脚本:
docker run -e DEBUG=true infinispan/<image-name>
设置 DEBUG_PORT 环境变量可调试容器中的 Infinispan 服务器:
docker run -e DEBUG_PORT="*:8787" -p 8787:8787 infinispan/server
镜像基于 ubi-minimal 构建,以下是常用调试工具/命令:
| 任务 | 命令 |
|---|---|
| 文本编辑器 | vi |
| 获取 Java 进程 PID | ps -fC java |
| 获取套接字/文件信息 | lsof |
| 列出所有打开文件(排除网络套接字) | lsof | grep -v "IPv[46]" |
| 列出所有 TCP 套接字 | ss -t -a |
| 列出所有 UDP 套接字 | ss -u -a |
| 网络配置 | ip |
| 显示单播路由 | ip route |
| 显示多播路由 | ip maddress |
建议使用 Infinispan 的 REST 端点配置 Kubernetes httpGet 探针:
livenessProbe: httpGet: path: /rest/v2/cache-managers/default/health/status port: 11222 failureThreshold: 5 initialDelaySeconds: 10 successThreshold: 1 timeoutSeconds: 10 readinessProbe: httpGet: path: /rest/v2/cache-managers/default/health/status port: 11222 failureThreshold: 5 initialDelaySeconds: 10 successThreshold: 1 timeoutSeconds: 10




免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429