Curl 本地到远程复制超时或仅复制少数文档CouchDb

Curl 本地到远程复制超时或仅复制少数文档CouchDb,curl,docker,couchdb,replication,connection-timeout,Curl,Docker,Couchdb,Replication,Connection Timeout,我在Docker(klaemo/couchdb)中运行安装的couchdb,并让端口转发安装,以便本地机器可以使用它。除了添加管理员用户之外,我还没有配置此数据库 以下是我的vm端口转发设置: 我可以打开localhost:5984/_utils,浏览安装中的数据,我可以实例化从AWS中的远程数据库到这个couchDB的复制,但是如果我以另一种方式启动复制,它在Futon中永远不会更新(我得到的只是菜单栏中的微调器) 如果我使用Curl进行复制,如下所示: curl -X POST http:

我在Docker(klaemo/couchdb)中运行安装的couchdb,并让端口转发安装,以便本地机器可以使用它。除了添加管理员用户之外,我还没有配置此数据库

以下是我的vm端口转发设置:

我可以打开localhost:5984/_utils,浏览安装中的数据,我可以实例化从AWS中的远程数据库到这个couchDB的复制,但是如果我以另一种方式启动复制,它在Futon中永远不会更新(我得到的只是菜单栏中的微调器)

如果我使用Curl进行复制,如下所示:

curl -X POST http://localhost:5984/_replicate -d '{"source":"http://username:password@localhost:5984/database-name","target":"http://username:password@remote.url.com:5984/database-name","connection_timeout":"60000"}' -H "Content-Type: application/json"
我得到一个暂停

{"error":"timeout"}
如果我打开Charles(HTTP代理)并将“proxy”:“”添加到curl请求负载中,则不会出现任何通信量,因此我假设从未尝试在本地coach和远程coach之间建立连接

你知道为什么吗

编辑

请注意,curl复制是在docker容器的shell中执行的。我能够从同一容器在本地和远程数据库上创建新的数据库,只有复制超时

编辑2 经过一些尝试和错误之后,我运行了复制,但它只复制了文档的一个子集:

运行复制卷后的响应:

{“ok”:true,“session_id”:“3c195aa3c723696bfb33679d4de3632a”,“source_last_seq”:79,“replication_id_version”:3,“history”:[{“session_id”:“3c195aa3c723696bfb33679d4de3632a”,“start_time”:“Mon,2015年4月20日13:42:37 GMT”,“end_time”:“Mon,2015年4月20日13:42:38 GMT”,“start_last_seq”:0,“end_last_seq”:79,“recorded_seq”:79”,选中“missing_”,“找不到”:53,“文件读取”:53,“文件写入”:**53**,“文件写入失败”:0}}

目标数据库是一个空数据库,因此它应该复制所有文档。顺便说一下,这是本地源数据库中cURL'的结果:

{“db_name”:“db name”,“doc_count”:**435**,“doc_del_count”:0,“update_seq”:43116,“purge_seq”:0,“compact_running”:false,“disk_size”:384835704,“data_size”:7091262,“instance_start_time”:“1429537029810”,“disk_format_version”:6,“committed_update_seq”:43116}

因此,它应该复制435份文件,而不是53份

我认为如果我再次运行复制,它将继续该过程,但它没有运行(no_changes:true):


{ok]:true,“无更改”:true,“会话id”:“3c195aa3c723696bfb33679d4de3632a”,“源上次”79,“复制id版本”:3,“历史”:[{“会话id”:“3c195aa3c723696bfb33679d4de3632a”,“开始时间”:“2015年4月20日星期一13:42:37 GMT”,“结束时间”:“2015年4月20日星期一13:42:38 GMT”,“开始上次”79,“记录”检查缺失:53,“发现缺失”:53,“文件读取”:53,“文件写入”:53,“文件写入失败”:0}]}

卷发有什么好处http://username:password@remote.url.com:5984来自docker容器外壳?该调用工作正常-我从couchDB获得了欢迎的JSON。我再试了一次,复制实际上工作正常-除了它只复制了我435个文档中的53个之外?可能有一个严格的超时切断了process?下次我调用复制时,它将不会运行(“无更改”)。我已编辑帖子以反映这一点。您找到解决此问题的方法了吗?