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

Couchbase Elasticsearch Connector 是一款用于在 Couchbase 数据库与 Elasticsearch 搜索引擎之间实现数据同步的工具镜像。其核心功能是建立两者间的实时或近实时数据通道,将 Couchbase 中的文档数据同步至 Elasticsearch 索引,支持数据的全量迁移与增量更新,帮助用户基于 Elasticsearch 的强大搜索能力构建高效的全文检索、数据分析及业务查询系统。
| 环境变量名 | 描述 | 默认值 | 必填 |
|---|---|---|---|
COUCHBASE_HOST | Couchbase 集群地址(格式:host:port,多个节点用逗号分隔) | localhost:8091 | 是 |
COUCHBASE_USER | Couchbase 访问用户名(需具备目标 Bucket 的读权限) | - | 是 |
COUCHBASE_PASSWORD | Couchbase 用户密码 | - | 是 |
COUCHBASE_BUCKET | 待同步的 Couchbase Bucket 名称 | - | 是 |
COUCHBASE_SCOPE | 待同步的 Scope 名称(默认同步所有 Scope,指定后仅同步目标 Scope) | _default | 否 |
COUCHBASE_COLLECTION | 待同步的 Collection 名称(默认同步所有 Collection,指定后仅同步目标) | _default | 否 |
ELASTICSEARCH_HOST | Elasticsearch 集群地址(格式:[***],多个节点用逗号分隔) | localhost:9200 | 是 |
ELASTICSEARCH_USER | Elasticsearch 访问用户名(需具备索引写入权限) | elastic | 否 |
ELASTICSEARCH_PASSWORD | Elasticsearch 用户密码 | - | 否 |
ELASTICSEARCH_INDEX | 目标 Elasticsearch 索引名称(支持动态命名,如 product_{bucket}) | couchbase_sync | 否 |
SYNC_MODE | 同步模式:full(全量)、incremental(增量)、full+incremental(全量+增量) | incremental | 否 |
BATCH_SIZE | 批处理大小(每次同步的文档数量) | 1000 | 否 |
CONNECT_TIMEOUT | 连接超时时间(单位:毫秒) | 5000 | 否 |
INDEX_MAPPING_FILE | Elasticsearch 索引映射配置文件路径(容器内路径) | - | 否 |
docker run -d \ --name couchbase-elasticsearch-connector \ -e COUCHBASE_HOST="couchbase-node1:8091,couchbase-node2:8091" \ -e COUCHBASE_USER="admin" \ -e COUCHBASE_PASSWORD="password123" \ -e COUCHBASE_BUCKET="ecommerce_products" \ -e COUCHBASE_SCOPE="inventory" \ -e COUCHBASE_COLLECTION="products" \ -e ELASTICSEARCH_HOST="elasticsearch:9200" \ -e ELASTICSEARCH_USER="elastic" \ -e ELASTICSEARCH_PASSWORD="es-password" \ -e ELASTICSEARCH_INDEX="products_index" \ -e SYNC_MODE="full+incremental" \ -e BATCH_SIZE=2000 \ -v /local/mapping.json:/app/index_mapping.json \ # 挂载索引映射配置文件 couchbase/elasticsearch-connector:latest
version: '3.8' services: couchbase: image: couchbase/server:7.2.0 ports: - "8091:8091" # Web控制台 - "8093:8093" # Query服务 - "11210:11210" # 数据服务 environment: - COUCHBASE_ADMIN_USER=admin - COUCHBASE_ADMIN_PASSWORD=password123 volumes: - couchbase-data:/opt/couchbase/var elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:8.10.4 environment: - discovery.type=single-node - ES_JAVA_OPTS="-Xms512m -Xmx512m" - xpack.security.enabled=true - ELASTIC_PASSWORD=es-password ports: - "9200:9200" volumes: - elasticsearch-data:/usr/share/elasticsearch/data connector: image: couchbase/elasticsearch-connector:latest depends_on: - couchbase - elasticsearch environment: - COUCHBASE_HOST="couchbase:8091" - COUCHBASE_USER="admin" - COUCHBASE_PASSWORD="password123" - COUCHBASE_BUCKET="ecommerce_products" - ELASTICSEARCH_HOST="elasticsearch:9200" - ELASTICSEARCH_USER="elastic" - ELASTICSEARCH_PASSWORD="es-password" - SYNC_MODE="full+incremental" - BATCH_SIZE=1000 volumes: - ./mapping.json:/app/index_mapping.json # 索引映射配置文件 volumes: couchbase-data: elasticsearch-data:
full:仅执行全量同步,扫描目标 Bucket/Scope/Collection 所有文档并同步至 Elasticsearch,完成后退出。incremental:仅监听 Couchbase DCP 变更流,同步新增/更新/删除的文档(需 Couchbase 开启 DCP 功能)。full+incremental:先执行全量同步,完成后自动切换为增量模式,持续监听变更。通过挂载外部 JSON 文件定义 Elasticsearch 索引映射(如字段类型、分词器),示例 mapping.json:
{ "mappings": { "properties": { "product_id": { "type": "keyword" }, "name": { "type": "text", "analyzer": "ik_max_word" }, "price": { "type": "double" }, "stock": { "type": "integer" }, "create_time": { "type": "date", "format": "yyyy-MM-dd HH:mm:ss" } } } }
控制每次同步的文档数量,建议根据数据大小调整:
data_reader 角色;Elasticsearch 用户需具备 index:write 权限。INDEX_MAPPING_FILE 自动创建),避免字段类型冲突。COUCHBASE_HOST。--cpus 和 -m 限制容器资源(如 --cpus 2 -m 4g)。免费版仅支持 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