Install CouchDB via Docker to synchronize data across multiple ends.
Moon.FM 是一款糖果色设计风格的泛用性播客。基于 Electron->全平台 😂。
全平台的使用情况下,多端同步也是一个需求痛点,软件内提供 Couchdb 的方法来同步数据。
使用 IBM Cloudant 多端同步 MoonFM 数据
使用 Docker 部署 CouchDB 为 Moon FM 同步数据
Ubuntu 安装 CouchDB 多端同步 MoonFM 数据
首先安装 Docker
1 | curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun |
1.安装 CouchDB
的 Docker
镜像
Docker Official Images - CouchDB
1 | 3.1.1版本能避免之前碰到的一个冲突 |
2.启动一个 CouchDB
实例,映射端口
1 | docker run -p 5984:5984 -d --name my-couchdb -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password couchdb:latest |
3.看下挂载成功没有
1 | docker ps |
成功启动就可以访问 ip:5984/_utils
(记得自己的 5984 端口防火墙放行了)
4.进入网页 GUI 页面,修改参数
然后直接从终端输入以下命令
创建 _users
用户表
1 | curl -X PUT http://admin:password@ip:5984/_users -H "Accept: application/json" -H "Content-Type: application/json" |
用 couchdb 管理员账户,创建一个用户名为 jan
密码为 apple
的用户
1 | curl -X PUT http://admin:password@ip:5984/_users/org.couchdb.user:jan -H "Accept: application/json" -H "Content-Type: application/json" -d '{"name": "jan", "password": "apple", "roles": [], "type": "user"}' |
用户 jan
创建后,你发现 CouchDB
同时为这个用户创建了一个数据库 userdb-6a616e
(数据库名是前缀 userdb- 加用户名的 hex 字符串)
那么这个用户的同步地址就是 http://jan:apple@ip:5984/userdb-6a616e
,将之输入软件的同步设置里。
ps.注意文中的 admin
password
ip
记得替换啊