本地到远程复制超时或仅复制less量文档CouchDb

我运行在Docker(klaemo / couchdb)中安装couchdb,并有端口转发安装,以便它可用于我的本地计算机。 除了添加pipe理员用户之外,我还没有configuration这个数据库。

这些是我的虚拟机端口转发设置: 在这里输入图像说明

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

如果我用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"} 

如果我打开查尔斯(一个HTTP代理)并添加“代理”:“ http:// localhost:8888 ”curl请求有效载荷,没有stream量出现,所以我假设连接甚至从来没有尝试之间的本地沙发和远程沙发。

任何想法,为什么这是?

编辑

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

编辑2经过一些试验和错误,我得到的复制运行,但它只复制一个文件的子集:

运行复制后的响应cURL:

{"ok":true,"session_id":"3c195aa3c723696bfb33679d4de3632a","source_last_seq":79,"replication_id_version":3,"history":[{"session_id":"3c195aa3c723696bfb33679d4de3632a","start_time":"Mon, 20 Apr 2015 13:42:37 GMT","end_time":"Mon, 20 Apr 2015 13:42:38 GMT","start_last_seq":0,"end_last_seq":79,"recorded_seq":79,"missing_checked":53,"missing_found":53,"docs_read":53,"docs_written":**53**,"doc_write_failures":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":"1429537029129810","disk_format_version":6,"committed_update_seq":43116}

所以它应该复制435个文件而不是53个。

我想如果我再次运行复制它会继续进程,但它没有运行(no_changes:true):

{"ok":true,"no_changes":true,"session_id":"3c195aa3c723696bfb33679d4de3632a","source_last_seq":79,"replication_id_version":3,"history":[{"session_id":"3c195aa3c723696bfb33679d4de3632a","start_time":"Mon, 20 Apr 2015 13:42:37 GMT","end_time":"Mon, 20 Apr 2015 13:42:38 GMT","start_last_seq":0,"end_last_seq":79,"recorded_seq":79,"missing_checked":53,"missing_found":53,"docs_read":53,"docs_written":53,"doc_write_failures":0}]}