kn69968 发表于 2024-12-23 21:45

DIY 家庭小主机 AIO (9) —— 云笔记知识管理 云密码本 协同办公 和 其他效率服务 hat

长期以来都是小透明和资深潜水党在社区里吸取大佬们的营养和指导, 近日折腾了一下小主机和 aio, 并且将过程整理成教程在社区里发表出来, 不求能够指导别人, 但求别人能有个参考, 并且一起交流学习.

各位说话好听 头发多 精力旺盛 过年涨薪的 佬们 觉得可以的话 就给我点个赞吧.

另外本人热爱分享, 热爱搞机, 馒头 pt 上传100T+,发种100+,做种500+, 做种时间一年(数据准备另开一贴贴出), 希望基于此能得到大佬的厚爱发个邀请:(btschool,聆音, 红叶,emp峨眉派/P0 rNbay都行,), 丰富下自己的下载中心, 再过几周我就可以回来发馒头药了

邮箱: hasdrsafsdeyuo@gmail.com



系列文章目录:
[*](1)PVE安装与卸载
[*](2)核显虚拟化
[*](3)个人云电脑的搭建 vgpu 硬解串流
[*](4)iStoreOS 软路由安装与网络流量分流实验
[*](5)PVE 下以虚拟机方式安装群晖 NAS 的技术可行性探讨
[*](6) NAS / 私服 功能规划与服务搭建
[*]私人网盘/同步备份中心
[*]内容流转中心和家庭影音媒体中心
[*]云笔记知识管理 云密码本 协同办公 和 其他效率服务
[*]将私服暴露到公网, 安全便利地回家及无缝网络服务
[*]PVE 下关于 NAS Linux 等虚拟机的系统管理


前言
针对记笔记

[*]热爱搞机的各位想必折腾了不少东西,留下了不少折腾笔记
[*]热爱学习进步的各位想必做了不少总结、想法以及心血;
[*]热爱读书的各位想必记录不少读书心得;
[*]知识需要沉淀

国产云笔记应用丁点的云盘大小还有一大堆广告,同时不少应用不支持笔记导出,这是绝对不是一个好的现象,自己的笔记应该拥有绝对的管理控制权,能够随时导出备份或者迁移到其他平台。针对互联网服务日益广泛繁杂的今天

[*]app网站账号一堆,小号加起来直接 double
[*]一个密码走天下绝对不安全,按规则组件密码,规则可能随着账号类型而变化多端,例如 网站前缀+自己的密码要素+其他, 网站名字可能是英文、单词、中文和拼音又或者其他,最终密码会产生歧义。
[*]伴随账号密码,还可能有一些附加的备注,例如密保问题、绑定手机、绑定邮箱、别名,二步验证密钥, 其他密钥,甚至是文件等等。
[*]使用 Words+密码的方式太过麻烦,每次要输入密码,需要查找 复制粘贴

网上冲浪选手针对日益爆炸性增长的互联网应用,也应该有个脱离人脑记忆的密码本管理工具,能够在手机自动填充,安全,完全由自己管理和控制。协同办公不用说了。
密码本,云笔记知识管理 和 协同办公 还得是 跨平台的无缝的随身的。在手机能看能编辑,在电脑也行,换台设备也行,跟别人分享和共同编辑也行。
云笔记知识管理
本人采用正在使用两种开源热门的方案:Obsidian 和 Joplin. 前者数据文件就是 markdown或者文档本身,没有什么专有的数据结构,换到任何 markdown 应用都可以使用,而且功能完善跨平台,开源社区活跃,插件丰富强大,支持 webdav 同步。后者则跟 印象笔记比较相似, 不过是开源版。
简单介绍一下 Obsidian 的用法。
https://pic4.zhimg.com/v2-82ac6c1ea2b7005775c2cc49f92a1fd9_1440w.jpg
https://pic1.zhimg.com/v2-dd7a84edacef74635d8ee8c5766bf0f4_1440w.jpg
此外 还有个 obsidian-remote 项目能够通过网页直接使用 obsidian, 就是网页应用版的 obsidian, 这里桌面版已经足够了, 就不折腾了。Joplin 可以看做 印象笔记的开源版,就不做多介绍了。
首先我们可以将 印象笔记的笔记导出成 Enex 格式,导入到 Joplin 再转换成 Markdown 通用格式来取回自己的数据的控制权。现在新版的 印象笔记不支持导出开源的格式, 需要使用老版本的 Evernote 便携版 登录拉取自己的笔记后再导出。Joplin 其同步除了使用 webdav 外,也可以 部署 joplin server 来进行云同步。以下是 docker-compose.yml 这里涉及到两个 容器的部署,一个是 joplin server, 一个是 postgres 数据库, 如果群辉已经部署了 postgres并且占用了对应的端口,需要修改。
# This is a sample docker-compose file that can be used to run Joplin Server
# along with a PostgreSQL server.
#
# Update the following fields in the stanza below:
#
# POSTGRES_USER
# POSTGRES_PASSWORD
# APP_BASE_URL
#
# APP_BASE_URL: This is the base public URL where the service will be running.
#        - If Joplin Server needs to be accessible over the internet, configure APP_BASE_URL as follows: https://example.com/joplin.
#        - If Joplin Server does not need to be accessible over the internet, set the APP_BASE_URL to your server's hostname.
#   For Example: http://:22300. The base URL can include the port.
# APP_PORT: The local port on which the Docker container will listen.
#        - This would typically be mapped to port to 443 (TLS) with a reverse proxy.
#        - If Joplin Server does not need to be accessible over the internet, the port can be mapped to 22300.

version: '3'

services:
    joplin-postgres:
      image: postgres:16
      volumes:
            - ../joplin-postgres/data:/var/lib/postgresql/data
      ports:
            - "5433:5432"
      restart: unless-stopped
      environment:
            - POSTGRES_PASSWORD=joplin
            - POSTGRES_USER=joplin
            - POSTGRES_DB=joplin
            - LANG=en_US.utf8
            - TZ=Asia/Shanghai
    app:
      image: joplin/server:latest
      depends_on:
            - joplin-postgres
      ports:
            - "22300:22300"
      restart: unless-stopped
      environment:
            - TZ=Asia/Shanghai
            - APP_PORT=22300
            - APP_BASE_URL=http://192.168.2.3:22300
            - DB_CLIENT=pg
            - POSTGRES_PASSWORD=joplin
            - POSTGRES_DATABASE=joplin
            - POSTGRES_USER=joplin
            - POSTGRES_PORT=5432
            - POSTGRES_HOST=joplin-postgres

云密码本
密码本有两种比较好的方案,都是开源的,且都功能强大,支持生物识别(指纹等),跨平台支持不同系统终端的客户端,简单易用。
[*]bitwarden. 有服务器版本。实际上如果不自己部署服务器的话采用官方的 bitwarden 服务也行,能满足绝大多数需求,但不能使用二步验证功能和上传文件。
[*]keepass. 无服务器,bitwarden 会员版有的功能它都有,通过 webdav 同步。

bitwarden 的部署使用vaultwarden 省内存。部署服务以后,登录界面,注册自己的账号,并且到 f-droid 或者 官网下载 windows 和 安卓 apk 后安装,在登录界面选择自己的服务器即可。注意这里要谨慎考虑暴露到公网的安全防护,避免重要的账户密码,银行卡信息和密码的暴露,我采用的方式是加了层 代理服务,会在后续的文章详述。version: '3'

services:
vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      DOMAIN: "https://your.domain"# 您的域名;Vaultwarden 需要知道它是 https 才能正确处理附件
    volumes:
      - ./vw-data:/data


keepass 安卓端采用的是 F-droid 上下载的 Keepass2Android, Windows 采用 KeepassXC. 使用也较为简单,就不多赘述了。

协同办公
这个相对简单,采用群辉自带的 Synology Office 和 Synology Drive 套件即可。功能与现在 腾讯文档,百度网盘的文档功能较为相似。也可以部署 nextcloud, windows server 的 microsoft office 等协同云文档。

PDF 编辑
采用社区开源的 Stirling-PDF 功能十分强大,这里有别人部署的 Free-PDF-Tool 或者官方的 demo.
在部署时可参考如下的 docker-compose.yml要注意的是你需要在自己创建好的 docker 管理目录 例如 /volume1/docker 上创建 stirling-pdf 目录, 并创建 几个子文件夹 trainingData , extraConfigs, logs等。其中如果要启用 OCR 功能,需要下载模型训练的数据到 trainingData 目录(如何下载看下面的引用),并绑定到 容器内的 /usr/share/tessdata 目录, OCR 参考官方的说明 HowToUseOCR.md.Tesseract OCR 支持多种语言。您可以在 Tesseract GitHub 存储库中找到其他语言包:

[*]tessdata_fast::这些语言包更小,加载速度更快,但识别精度可能较低。
[*]tessdata: 这些语言包更大,识别精度更高,但加载时间可能更长。
根据您的要求,您可以选择适合您的用例的语言包。默认情况下,Stirling-PDF 使用 tessdata_fast 表示英语,但这可以替换。version: '3.3'
services:
stirling-pdf:
    image: stirlingtools/stirling-pdf:latest
    ports:
      - '10006:8080'
    volumes:
      # 下载ocr 模型 wget https://github.com/tesseract-ocr/tessdata/raw/main/chi_sim_vert.traineddata, wget https://github.com/tesseract-ocr/tessdata/raw/main/chi_sim.traineddata,
      - ./trainingData:/usr/share/tessdata # Required for extra OCR languages
      - ./extraConfigs:/configs
      - ./customFiles:/customFiles/
      - ./logs:/logs/
    environment:
      - SECURITY_INITIALLOGIN_USERNAME=hin
      - SECURITY_INITIALLOGIN_PASSWORD=111111
      - DOCKER_ENABLE_SECURITY=false
      - INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false
      - LANGS=zh_CN
      - TZ=Asia/Shanghai


如下是部分的功能示意图。
https://pic3.zhimg.com/v2-c9ec8a17993a66ecf9a732f639fb47b2_1440w.jpg


功能部分示意图

ITTools
集大成的 IT 工具箱,瑞士军刀。不用到不知名的网站去输入一些需要转换的敏感数据了。
https://pica.zhimg.com/v2-322c19e4e384324dd64c2492320bcf4a_1440w.jpg

画图工具 http://draw.io
画图工具, 懂的都懂不用多解释,代替 Visio

#This compose file adds draw.io to your stack
version: '3.5'
services:
drawio:
    image: jgraph/drawio
    container_name: drawio
    restart: unless-stopped
    ports:
      - 8080:8080
      - 8443:8443
    environment:
      PUBLIC_DNS: draw.xiaomoai.me
      ORGANISATION_UNIT: unit
      ORGANISATION: org
      CITY: city
      STATE: state
      COUNTRY_CODE: country
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost:8080 || exit 1"]
      interval: 1m30s
      timeout: 10s
      retries: 5
      start_period: 10s

tedaz 发表于 2024-12-24 10:43

看这配色就知道楼主是顶级程序大神。
文科出身的我,看到这么代码就只能膜拜了。

kn69968 发表于 2024-12-24 12:11

tedaz 发表于 2024-12-24 10:43
看这配色就知道楼主是顶级程序大神。
文科出身的我,看到这么代码就只能膜拜了。 ...

顶级和大神两个词就谬赞了。

文科出身也不用怕,很多东西都是开箱即用的,如果不是开箱即用,就不用哈哈。

改天我写个基本上没有代码教程,希望能够和大家交流学习(为了给我刷更高的阅读量哈哈)
页: [1]
查看完整版本: DIY 家庭小主机 AIO (9) —— 云笔记知识管理 云密码本 协同办公 和 其他效率服务 hat