本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
Apache ShardingSphere是开源的分布式数据库解决方案生态系统,包含JDBC、Proxy及Sidecar(规划中)三款独立产品。它们均提供数据分片、分布式事务和分布式治理功能,适用于Java同构、异构语言及云原生等多种场景。
Apache ShardingSphere旨在充分利用分布式系统中现有数据库的计算和存储能力,而非构建全新数据库。关系型数据库作为企业基石仍占据巨大市场份额,因此我们专注于其增量扩展而非彻底颠覆。
自5.x版本起,Apache ShardingSphere聚焦插件化架构,功能可灵活嵌入项目。当前支持的数据分片、读写分离、数据加密、影子库等特性,以及MySQL、PostgreSQL、SQLServer、Oracle等SQL方言/数据库协议,均通过插件实现。开发者可像搭建乐高积木般自定义ShardingSphere,目前已拥有丰富且持续增长的SPI扩展。
Apache ShardingSphere
ShardingSphere-Proxy定位为透明数据库代理,提供封装数据库二进制协议的数据库服务,支持异构语言。目前提供MySQL和PostgreSQL版本(兼容基于PostgreSQL的数据库,如openGauss)。可使用任何兼容MySQL或PostgreSQL协议的终端(如MySQL命令行客户端、MySQL Workbench等)操作数据,对DBA更友好。
!ShardingSphere-Proxy架构
docker pull apache/shardingsphere-proxy
git clone [***] mvn clean install cd shardingsphere-distribution/shardingsphere-proxy-distribution mvn clean package -Prelease,docker
在/${your_work_dir}/conf/目录下创建server.yaml和config-xxx.yaml,用于配置分片规则和服务器规则。
请参考配置手册。
配置示例可参考GitHub示例。
docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
注意
3308(容器端口)和13308(主机端口)可自定义。/opt/shardingsphere-proxy/conf。docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -e JVM_OPTS="-Djava.awt.headless=true" -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
注意
JVM_OPTS定义JVM相关参数。docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -v /${your_work_dir}/ext-lib:/opt/shardingsphere-proxy/ext-lib -p13308:3308 apache/shardingsphere-proxy:latest
注意
/opt/shardingsphere-proxy/ext-lib。连接方式与连接PostgreSQL相同:
psql -U ${your_user_name} -h ${your_host} -p 13308
问题1:处理请求时出现I/O异常(java.io.IOException):{}->unix://localhost:80: Connection refused。
解答:构建镜像前,请确保Docker守护进程已运行。
问题2:无法连接数据库的错误报告。
解答:请确保/${your_work_dir}/conf/config-xxx.yaml配置中指定的PostgreSQL IP可被Docker容器访问。
问题3:如何启动后端数据库为MySQL或openGauss的ShardingSphere-Proxy?
解答:将mysql-connector.jar或opengauss-jdbc.jar所在目录挂载至/opt/shardingsphere-proxy/ext-lib。
免费版仅支持 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