Self-host

自托管 Dropt relay

relay 让手机在不同网络下把加密载荷交给桌面端。它不解密笔记,只保存待取走的消息。

用 Docker 启动

仓库里的 relay 服务可以直接用 Docker 构建运行。生产部署时请使用你自己的随机 token,不要复用示例值。

docker build -t mycel-dropt-relay ./dropt-relay
docker run --rm -p 8787:8787 \
  -e DROPT_RELAY_WRITE_TOKEN="replace-with-random-write-token" \
  -e DROPT_RELAY_DRAIN_TOKEN="replace-with-random-drain-token" \
  mycel-dropt-relay

Token 分工

  • DROPT_RELAY_WRITE_TOKEN:给手机端写入加密消息。
  • DROPT_RELAY_DRAIN_TOKEN:给桌面端取回并删除消息。

这两个 token 是 relay 的访问控制,不是解密密钥。不要把它们写进公开仓库或截图。

nginx 反代示例

server {
  server_name relay.example.com;

  location / {
    proxy_pass http://127.0.0.1:8787;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

安全边界

  • relay 只保存加密载荷与队列元数据。
  • 桌面端 drain 成功后,relay 删除对应队列项。
  • 如果 relay 暴露到公网,请使用 HTTPS,并把 token 存在服务器环境变量里。
  • 如果 token 泄露,请立即轮换 token 并重启服务。

连接到 Mycel

在桌面端的手机捕获或 Dropt 设置里填入 relay 地址和 token。手机端通过配对页或分享路径提交后,桌面端会从 relay drain 内容并写入本地库。

Dropt relay 配对面板:relay URL、write/drain token 字段(演示用假值,真实使用时填本机 relay 凭证)