simpread icon indicating copy to clipboard operation
simpread copied to clipboard

[Feature Request] 自定义同步助手的服务地址

Open jimlee2048 opened this issue 2 years ago • 25 comments

需求描述:

  • 希望能够自定义同步助手的服务地址,允许连接部署在远程服务器上的同步助手命令行

使用场景:

  • 配合docker版的同步助手命令行,将同步助手当作Self-Hosted的远程SaaS服务使用,实现多设备配置同步、文章统一导出归档等进阶需求,参见https://github.com/j1g5awi/simpread-sync/issues/1

现状:

  • 当前版本(v2.2.0)只能够自定义同步的端口号
  • 如需修改服务地址,只能通过端口转发的方式映射到本地回环地址(参考https://github.com/Kenshin/simpread/discussions/3898 )

jimlee2048 avatar Jul 23 '22 15:07 jimlee2048

目前暂时只能端口转发的的方式,这个功能算做 Feature 处理吧。

开始时确实可以指定端口号,但后来很多功能都跟 7026 有关,为了简化操作,所以就没有修改端口号了。

Kenshin avatar Jul 24 '22 02:07 Kenshin

请问该 feat 是否有预期的上线时间呢?

Xm798 avatar May 31 '23 10:05 Xm798

这个需求很有用,这样就不需要进行多端同步。而且也能在手机端obsidian上打开对应的标注页面。

isdamir avatar Jul 21 '23 02:07 isdamir

@Xm798 @isdamir

okay 一直在 Todo 里面 😂 确实有点 Delay~

Kenshin avatar Jul 21 '23 02:07 Kenshin

我理解这个事情有一个额外的复杂点,对于已经有大量存量标注数据的用户想迁移到Docker上的替换。 包括本身在稍后读里面的数据、离线数据、双向链接的数据都需要进行更新。

isdamir avatar Jul 21 '23 02:07 isdamir

@isdamir

是的,但(如你所说),还是非常值得这么做的。

Kenshin avatar Jul 21 '23 03:07 Kenshin

如果实现docker远程部署 牛逼了 牛逼了。社区再有个手机端app 那就完美解决所有痛点

SrSh-notme avatar Oct 17 '23 04:10 SrSh-notme

大佬,我想请问一下这个需求进度咋样了。如果时间还久,我就用本机映射端口来部署使用Docker的同步助手了。

isdamir avatar Oct 23 '23 08:10 isdamir

@isdamir

排期ing 前阵子(下半年)积攒了不少未发布的功能。

PS:建议先用端口映射解决。

Kenshin avatar Oct 23 '23 08:10 Kenshin

@isdamir

排期ing 前阵子(下半年)积攒了不少未发布的功能。

PS:建议先用端口映射解决。

好的,收到。

功能出了可以踢我,我可以一起测试。

isdamir avatar Oct 23 '23 08:10 isdamir

@isdamir

功能出了可以踢我,我可以一起测试。

okay 已 Mark

Kenshin avatar Oct 23 '23 08:10 Kenshin

我使用了frp的stcp(考虑到没有认证机制)映射端口,使用效果很好,但是发现Obsidian插件中会显示标注对应页面为404 image 但是我点击链接在浏览器打开却是正常的(地址是localhost)。 image 因为无法在Obsidian插件上获取打开的地址,无法确定问题出现在那里。

isdamir avatar Oct 26 '23 08:10 isdamir

@isdamir

你的最后一个截图,在左侧应该有个工具栏(目录栏),如下图

image

或者你直接访问 http://localhost:7026/unread/45 看看显示什么内容?

Kenshin avatar Oct 26 '23 08:10 Kenshin

image

也是不对的,是unread和reading的区别,为什么在obsidian里面展示的是unread. image

我看两者地址不一样。

isdamir avatar Oct 26 '23 08:10 isdamir

image 而且命令行版本的没有工具菜单和标注能力

isdamir avatar Oct 26 '23 09:10 isdamir

  • http://localhost:7026/reading/45 → 本地快照

  • http://localhost:7026/unread/45 → 本地标注

有个疑问,如果访问了不存在的页面应该是下图所示才对

image

emmm

建议先不要使用端口映射方案,先在本地确保可以正常配置 Obsidian 这套流程,然后再使用端口映射。


https://github.com/Kenshin/simpread/issues/4247#issuecomment-1780702262

命令行和同步助手是不一样的,命令行方案比同步助手少了一些功能。

Kenshin avatar Oct 26 '23 09:10 Kenshin

要实现 Obsidain 高级库的功能,一定要使用同步助手方案,而不是命令行方案。

命令行方案只是给不喜欢简悦同步助手的用户一个轻量级方案。

Kenshin avatar Oct 26 '23 09:10 Kenshin

要实现 Obsidain 高级库的功能,一定要使用同步助手方案,而不是命令行方案。

命令行方案只是给不喜欢简悦同步助手的用户一个轻量级方案。

好吧,那就没办法了。

isdamir avatar Oct 26 '23 09:10 isdamir

@isdamir

如果只使用命令行的话,除了无法内嵌在 Obsidian 标注外,大部分常规功能都可以使用,比如你第一个截图中的功能。

Kenshin avatar Oct 26 '23 09:10 Kenshin

@isdamir

如果只使用命令行的话,除了无法内嵌在 Obsidian 标注外,大部分常规功能都可以使用,比如你第一个截图中的功能。

明白,主要是日常使用obsidian比较多 我看 浏览器<-->同步助手<-->Obsidian插件之间都是通过http api进行交互的吧,这样从理论上来说远程Docker部署的应该也可以做。Docker解决方案比较方便跨终端平台使用,一站式解决问题。

isdamir avatar Oct 26 '23 09:10 isdamir

@isdamir

Docker 毕竟对大部分用户来说还是它 Geek 了,比如 Obsidian 从技术角度说,它完全可以做成 Docker,并实现大部分功能。(肯定不是全部功能,但大部分功能来说肯定可以)

但 Docker 化后会解决它 Local First 软件的一些弊端,但它也没有 Docker 化,因为就是我说的原因。

而简悦也有同样的顾虑,但我的想法是,Docker 是需要实现的,只是优先级没有那么高。每个功能出来后都需要对它负责,尤其是平台级的功能,我不能随便弄个 Docker 出来,然后就不管了。

因此大方向是要做的,只是优先级而已。


如果动手能力强的话,可以使用端口映射的方式直接在服务器安装同步助手(非命令行版),实现多机共享方案。

Kenshin avatar Oct 26 '23 10:10 Kenshin

我使用了frp的stcp(考虑到没有认证机制)映射端口,使用效果很好,但是发现Obsidian插件中会显示标注对应页面为404 image 但是我点击链接在浏览器打开却是正常的(地址是localhost)。 image 因为无法在Obsidian插件上获取打开的地址,无法确定问题出现在那里。

大佬,我刚好也是在阿里云用frp ,能否 贴一个 simpread-sync 的frp 服务器端,客户端的配置信息?

jzzzvnpy avatar Dec 10 '23 01:12 jzzzvnpy

@jzzzvnpy frp_0.52.3

frpc.toml

serverAddr = "xxx"
serverPort = 41000
auth.method = "token"
auth.token = "xxx"

[[visitors]]
name = "simpreadsync_visitor"
type = "stcp"
serverName = "simpreadsync"
secretKey = "simpkey"
bindAddr = "127.0.0.1"
bindPort = 7026

frps.toml

bindPort = 41000
auth.method = "token"
auth.token = "xxx"

但是我觉得不好用,主要是缺了功能。

isdamir avatar Dec 11 '23 12:12 isdamir

谢谢大佬热心帮助。 我大概率弄了非常奇葩的方式来解决问题。我整理出来了再发出来。

jzzzvnpy avatar Dec 12 '23 06:12 jzzzvnpy

我其实有个想法,封装一个能网页展示界面的Docker镜像,直接弄一个Linux的客户端。这样应该就是完整版了。主要是没时间折腾。

isdamir avatar Dec 13 '23 05:12 isdamir