From 18c790aa335fffb137dbce6a7b5aa4ec32514983 Mon Sep 17 00:00:00 2001 From: rockbenben Date: Sat, 16 Sep 2023 09:30:53 +0800 Subject: [PATCH] docs: update docs --- README.md | 24 +++++------ docs/README.md | 22 +++++----- docs/family/baby/README.md | 16 ++++++++ docs/family/baby/birthing.md | 21 ++++++++++ docs/family/baby/newborn.md | 49 +++++++++++++++++++++++ docs/services/Docker.md | 2 +- docs/services/Huginn.md | 2 +- docs/services/NAS.md | 19 ++------- docs/services/TTRSS.md | 2 +- docs/services/dockers-on-nas/README.md | 47 ++++++++++++++++++++++ docs/services/dockers-on-nas/emby.md | 48 ++++++++++++++++++++++ docs/services/dockers-on-nas/navidrome.md | 38 ++++++++++++++++++ 12 files changed, 247 insertions(+), 43 deletions(-) create mode 100644 docs/family/baby/README.md create mode 100644 docs/family/baby/birthing.md create mode 100644 docs/family/baby/newborn.md create mode 100644 docs/services/dockers-on-nas/README.md create mode 100644 docs/services/dockers-on-nas/emby.md create mode 100644 docs/services/dockers-on-nas/navidrome.md diff --git a/README.md b/README.md index aa160d97b..7b3827e30 100644 --- a/README.md +++ b/README.md @@ -20,11 +20,11 @@ ## ✨ 初衷 -曾经,我把知识记录在 Notion、Obsidian、飞书等知识管理软件上,导致笔记散落各处,使用起来很麻烦,也难以对外分享。 +曾经,我采用了 Notion、Obsidian 和 飞书 等多款知识管理工具来存储我的心得与笔记。然而,这种方式导致我的资料分散,难以管理和分享。 -更重要的是,**笔记里的知识并不属于你,只有经过消化、应用,才会成为自己的知识。** +更重要的是,**笔记里的知识并不属于你,只有经过消化、应用,才会成为我们的财富。** -因此,我基于 VuePress 和 vuepress-theme-hope 建立了 LearnData,将所有笔记与文章重新整合,聚合到同一页面形成知识库,方便自己使用和分享。 +为此,我基于 VuePress 和 vuepress-theme-hope 构建了 LearnData 开源笔记,将我所有的笔记与文章聚合到同一页面形成知识库,便于集中管理和分享。 ![](https://img.newzone.top/2022-08-22-19-28-25.png?imageMogr2/thumbnail/600x "笔记 + 文章 = LearnData 知识库") @@ -33,18 +33,16 @@ ## 🧱 笔记结构 - 置顶:日常习惯、健身、阅读; -- 代码:常用代码的学习和使用笔记; - 软件应用:常用应用、Chrome 扩展和相关教程; -- 页面开发:页面插件和框架生成工具; -- 网站部署:网站相关的工具和知识收集; -- Linux 服务:NAS 和服务器上的后端应用,主要以 Docker 方式部署; +- Docker 服务:NAS 和服务器上的后端应用,主要以 Docker 方式部署; - 系统问题:Windows 系统优化和相关问题; -- 生活区:说明书、生活记录和小技巧; -- 博客区:聚合所有博客文章,以分类、标签、时间轴等方式进行组合。 +- 代码编程:常用代码的学习和使用笔记,页面开发攻略和网站相关的工具和知识收集; +- 生活角落:说明书、生活记录和小技巧; +- 博客汇总:聚合所有博客文章,以分类、标签、时间轴等方式进行组合。 ## 🍥 搭建 LearnData -1. 首先,进入 [LearnData](https://github.com/rockbenben/LearnData) 项目页,点击右上方的「Use this template」>「Create a new repository」。 +1. 首先,进入 [LearnData](https://github.com/rockbenben/LearnData) 项目页,点击右上角「Use this template」后选择「Create a new repository」。 ![](https://img.newzone.top/2022-08-10-19-32-05.png?imageMogr2/format/webp) @@ -83,9 +81,11 @@ ![](https://img.newzone.top/2022-08-10-19-39-15.png?imageMogr2/format/webp) -6. 设置成功后,页面会提示访问链接:`https://xxx.github.io/`,知识库搭建完毕。 +6. 设置成功后,页面会提示访问链接:`https://xxx.github.io/`。此时,你的知识库就已经搭建完成了。 - 如果未出现访问链接提示或不能打开 GitHub Pages,则删除 `docs/_posts` 路径下的博客文件,GitHub Pages 有时会对旧文章里的代码报错。 + 如果未出现访问链接提示或不能打开 GitHub Pages,则删除 `docs/_posts` 路径下的博客文章。这是因为 GitHub Pages 有时会对旧文章里的代码报错。 + +注意:如果出现报错 `Error: Input required and not supplied: server`,请删除 `.github/workflows/main.yml` 中 Sync files 区块的代码,以避免出现报错。 ## 🔣 配置 LearnData diff --git a/docs/README.md b/docs/README.md index a729b9ef1..02d6475eb 100644 --- a/docs/README.md +++ b/docs/README.md @@ -10,11 +10,11 @@ icon: note ## ✨ 初衷 -曾经,我把知识记录在 Notion、Obsidian、飞书等知识管理软件上,导致笔记散落各处,使用起来很麻烦,也难以对外分享。 +曾经,我采用了 Notion、Obsidian 和 飞书 等多款知识管理工具来存储我的心得与笔记。然而,这种方式导致我的资料分散,难以管理和分享。 -更重要的是,**笔记里的知识并不属于你,只有经过消化、应用,才会成为自己的知识。** +更重要的是,**笔记里的知识并不属于你,只有经过消化、应用,才会成为我们的财富。** -因此,我基于 VuePress 和 vuepress-theme-hope 建立了 LearnData,将所有笔记与文章重新整合,聚合到同一页面形成知识库,方便自己使用和分享。 +为此,我基于 VuePress 和 vuepress-theme-hope 构建了 LearnData 开源笔记,将我所有的笔记与文章聚合到同一页面形成知识库,便于集中管理和分享。 ![](https://img.newzone.top/2022-08-22-19-28-25.png?imageMogr2/thumbnail/600x "笔记 + 文章 = LearnData 知识库") @@ -23,18 +23,16 @@ icon: note ## 🧱 笔记结构 - 置顶:日常习惯、健身、阅读; -- 代码:常用代码的学习和使用笔记; - 软件应用:常用应用、Chrome 扩展和相关教程; -- 页面开发:页面插件和框架生成工具; -- 网站部署:网站相关的工具和知识收集; -- Linux 服务:NAS 和服务器上的后端应用,主要以 Docker 方式部署; +- Docker 服务:NAS 和服务器上的后端应用,主要以 Docker 方式部署; - 系统问题:Windows 系统优化和相关问题; -- 生活区:说明书、生活记录和小技巧; -- 博客区:聚合所有博客文章,以分类、标签、时间轴等方式进行组合。 +- 代码编程:常用代码的学习和使用笔记,页面开发攻略和网站相关的工具和知识收集; +- 生活角落:说明书、生活记录和小技巧; +- 博客汇总:聚合所有博客文章,以分类、标签、时间轴等方式进行组合。 ## 🍥 搭建 LearnData -1. 首先,进入 [LearnData](https://github.com/rockbenben/LearnData) 项目页,点击右上方的「Use this template」>「Create a new repository」。 +1. 首先,进入 [LearnData](https://github.com/rockbenben/LearnData) 项目页,点击右上角「Use this template」后选择「Create a new repository」。 ![](https://img.newzone.top/2022-08-10-19-32-05.png?imageMogr2/format/webp) @@ -73,9 +71,9 @@ icon: note ![](https://img.newzone.top/2022-08-10-19-39-15.png?imageMogr2/format/webp) -6. 设置成功后,页面会提示访问链接:`https://xxx.github.io/`,知识库搭建完毕。 +6. 设置成功后,页面会提示访问链接:`https://xxx.github.io/`。此时,你的知识库就已经搭建完成了。 - 如果未出现访问链接提示或不能打开 GitHub Pages,则删除 `docs/_posts` 路径下的博客文件,GitHub Pages 有时会对旧文章里的代码报错。 + 如果未出现访问链接提示或不能打开 GitHub Pages,则删除 `docs/_posts` 路径下的博客文章。这是因为 GitHub Pages 有时会对旧文章里的代码报错。 注意:如果出现报错 `Error: Input required and not supplied: server`,请删除 `.github/workflows/main.yml` 中 Sync files 区块的代码,以避免出现报错。 diff --git a/docs/family/baby/README.md b/docs/family/baby/README.md new file mode 100644 index 000000000..b2d185b0c --- /dev/null +++ b/docs/family/baby/README.md @@ -0,0 +1,16 @@ +--- +article: false +index: false +title: 育儿记录 +icon: emoji +--- + +面对初为人父的经历,作为一位新生奶爸,我深感一路上充满了未知与探索。面对婴儿的每一个眼神、每一声啼哭,我时常觉得自己措手不及,无从下手。因此,我决定将这段旅程中遇到的各种疑问、挑战,以及为此找到的解决方案,做个详实的记录。希望这份不完全记录,能对和我一样的新手父母提供些许参考,同时,也希望在未来的某一天,能回首这段充满探索与成长的日子,感到育儿的幸福。 + + + +
+ +
+ + \ No newline at end of file diff --git a/docs/family/baby/birthing.md b/docs/family/baby/birthing.md new file mode 100644 index 000000000..516d4ae54 --- /dev/null +++ b/docs/family/baby/birthing.md @@ -0,0 +1,21 @@ +--- +article: false +title: 生产前的准备 +order: 1 +--- + +## 不要囤货 + +不建议过度囤积婴儿用品,尤其是尿不湿和奶粉。虽然有时会有吸引人的优惠,但我们必须记住,新生儿的成长速度惊人。今天合适的尿不湿尺寸,明天可能就小了。我还记得,老婆的朋友曾大量储备尿不湿,结果没用完。最后,我们成了这些尿不湿的受益者。此外,尽管配方奶是母乳不足的一个备选,但它的营养价值还是不及母乳。因此,也不建议过量购买。 + +## LDR 的选择 + +LDR 是结合待产、分娩、恢复及产后的一体化单人房间。虽然我因为剖腹产不能陪同分娩,但这几天内,我和产妇都得到了很好的休息。医生和护士的日常巡查较为频繁,也使我们感到十分安心。 + +## 陪护的重要性 + +对于初为人父母的家长,建议雇佣一名陪护阿姨。若没有阿姨协助,你将需要自己记录宝宝的进食和排泄,并在夜间照看宝宝。这对于新手父母是个大挑战。我对于新生儿甚至有些胆怯,不敢随意抱起。在医院陪护期间,我感觉自己更像是个付款机器,无法真正帮到忙。 + +## 送花:一个小小的惊喜 + +若产妇即将分娩,那么送上一束鲜花可能会为她带来无比的惊喜和欢乐。尽管我老婆知道这并非我的想法,但她收到花时还是感到非常开心,特别是得知她是医院中唯一一个收到花的产妇。 diff --git a/docs/family/baby/newborn.md b/docs/family/baby/newborn.md new file mode 100644 index 000000000..6be75d5e8 --- /dev/null +++ b/docs/family/baby/newborn.md @@ -0,0 +1,49 @@ +--- +article: false +title: 新生儿期(0-6 月) +order: 2 +--- + +## 坚持母乳喂养 + +为即将出生的宝宝准备一小罐奶粉即可,避免购买婴儿水或其他所谓的婴儿食品。正常情况下,纯母乳喂养能满足 6 月龄婴儿所需要的全部能量、营养素和水。由于之前未进行充分研究,家人采购了四箱婴儿水,结果成了我饮用的“补给”。(参考《中国居民膳食指南(2022)》) + +> - 母乳喂养是婴儿出生后最佳喂养方式。 +> - 婴儿出生后不要喂任何母乳以外的食物。 +> - 应坚持纯母乳喂养至婴儿满 6 月龄。 +> - 坚持让婴儿直接吸吮母乳,只要母婴不分开,就不用奶瓶喂哺。 +> - 不宜用母乳颜色、质地以及母乳成分测定结果来判定母乳营养价值。 + +## 宝宝醒了吗 + +初为人父时,我会因宝宝的任何小动静而紧张,不断跑过去查看。但其实,即使宝宝有些身体动作,也不代表她真的醒来。因此,无需因宝宝的轻微动静就去打扰她。^[[母性科学](https://www.bilibili.com/bangumi/play/ep272469)] + +## 宝宝哭闹的原因 + +宝宝刚出生时,月嫂和家里老人都有个说法是不能惯着她,让宝宝哭一会。但是,**哭闹是婴儿表达饥饿信号的最晚表现**。 + +在因饥饿而哭闹之前,婴儿可能已经出现以下表现:张嘴,吸手指、嘴唇或舌头;从睡眠中醒来,转动头脑,有好似寻找乳房的倾向;身体活动增多,呈现烦躁、哭闹等不安状态。识别出婴儿饥饿表现后,应立即哺喂。婴儿饥饿的后续表现才是哭闹。所以,根本不存在惯不惯着的问题,人家哭的时候,已经是饿惨了,请立即喂奶。 + +喂养的时长和频次由婴儿进食意愿和需求决定。不要因为所谓的惯着而让婴幼儿哭闹。通过识别婴幼儿发出饥饿与进食的信号,在不限制哺乳次数和时长的前提下,立即、合理回应婴儿的进食需要。婴儿饥饿是按需喂养的基础,饥饿引起哭闹时应及时喂哺,不要强求喂奶次数和时间,特别是 3 月龄内的婴儿。 + +> 新生儿胃容量小,胃排空较快,易感到饥饿,因此需多次哺乳满足其进食需要,伴随成长发育,一般喂奶间隔从 1 ~ 2 小时逐渐延长至 3 小时左右。3 个月后,婴儿胃容量增大,进食习惯趋于规律,同时夜间睡眠时间延长,夜间喂奶次数也可逐渐减少。 + +除了饥饿的表现外,婴儿胃肠道不适或其他身体不舒服,甚至婴儿情绪不佳也会表现出不同状态的哭闹,而非饥饿原因引起的哭闹,显然无法通过哺喂得到完全安抚。应考虑非饥饿原因,比如大小便、体温等。 + +婴儿的胃容量逐渐增加,因此其进食需求也会发生变化,回应式喂养是指符合婴儿进食特性的喂养方式,强调喂养的时长和频次由婴儿进食意愿和需求决定,包括早期新生儿的按需喂养方式,及日后逐渐形成的规律喂养方式。所谓回应式喂养,也称顺应喂养,就是要及时地对婴儿发出的进食需求,迅速做出喂养回应。按需喂养是指通过识别婴幼儿发出饥饿与进食的信号,在不限制哺乳次数和时长的前提下,立即、合理回应婴儿的进食需要。婴儿饥饿是按需喂养的基础,饥饿引起哭闹时应及时喂哺,不要强求喂奶次数和时间,特别是 3 月龄内的婴儿。 + +婴幼儿哭闹是有具体需求的,先满足她的需求让她心情平静下来,哭闹时不要做排气操等行为。 + +## 月嫂:助手还是潜在风险? + +月嫂为新父母提供宝贵的育儿知识,但务必确认其**是否携带药物**。若有,应要求其将药物存放于宝妈房中。 + +我们第一个月嫂是从老家来的,做事利索,宝宝在她手上也特别乖。但是来了一周后,宝宝突然有两天睡得很沉,家人虽然奇怪,但都不清楚原因。然而,在随后一天的夜里,我丈母娘查监控时,突然看到月嫂为宝宝喂了药物。监控视频显示,月嫂确实有疑似给宝宝喂食的举动,且宝宝展现出吞咽的反应。当晚我们匆忙前往儿童医院,医生诊断宝宝的黄疸值为 12,并告知这一指数高可能导致嗜睡。考虑到为宝宝抽血的风险,我们没有进行进一步的检验。但当晚,宝宝整夜都未醒来,考虑到新生儿的胃容量只有 100-200ml,超过 3 小时便会感到饥饿。这更加加深了我们的怀疑,随后就辞退了这位月嫂。 + +在随后的红房子医院复查中,我得知黄疸值需超过 20 才会导致嗜睡,婴儿的安眠用药非常具有时效性,很快就无法检测到。当时,监控于 22:40 捕捉到疑似喂药动作,但第一次去的医院没有新生儿门诊,直到凌晨 1 点才抵达能够进行此检测的医院。但儿童医院可能因为深夜不愿意为宝宝抽血,故意诊断为黄疸高嗜睡。 + +第二个月嫂也带了药,而且相当懒惰。宝妈还在喂奶,月嫂 9 点就睡了。当晚我就打电话让中介换人,按一天工资给她结了。 + +第三个月嫂的态度非常积极,她明确表示不会携带药物,并允许我们检查她的物品。她还精心准备了美味的月子餐,让宝妈可以分享照片,从而提振心情。好的心情对坐月子的母亲来说极为重要。 + +为确保婴儿安全,建议在婴儿区域安装至少两个监控摄像头:一个针对婴儿床,另一个涵盖婴儿活动区。我最初只装了一个,发生疑似喂药事件后,才又增设了一个。与月嫂初次见面时,建议明确告知她家里有摄像头,一般她们都能接受。 diff --git a/docs/services/Docker.md b/docs/services/Docker.md index 754c02262..25802455f 100644 --- a/docs/services/Docker.md +++ b/docs/services/Docker.md @@ -2,7 +2,7 @@ article: false title: Docker icon: any -order: 4 +order: 2 --- Docker 是一个开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。借助 Docker,您可以与管理应用程序相同的方式来管理基础架构。简单点说,用 Docker 你不懂太多代码知识,直接用其他人的打包容器,小白也可以部署复杂的服务应用。 diff --git a/docs/services/Huginn.md b/docs/services/Huginn.md index 3f5bfcfe6..ea3afb391 100644 --- a/docs/services/Huginn.md +++ b/docs/services/Huginn.md @@ -2,7 +2,7 @@ article: false title: Huginn icon: customize -order: 2 +order: 3 --- - Huginn 部署:查看 [deploy Huginn inside of Docker](https://github.com/huginn/huginn/blob/master/doc/docker/install.md) 和 [.env 设置](https://github.com/huginn/huginn/blob/master/.env.example),或按下方的教程手动部署到服务器上,轻量使用推荐部署到 Docker。 diff --git a/docs/services/NAS.md b/docs/services/NAS.md index 9d996c47f..7c0a14358 100644 --- a/docs/services/NAS.md +++ b/docs/services/NAS.md @@ -11,6 +11,8 @@ NAS 主要用于 Docker 服务、影视管理和文件存储备用这三方面 - 选择「控制面板」>「任务计划」>「新增」>「计划的任务」>「用户定义的脚本」,给 NAS 建立定时任务脚本。 - SSD 缓存对家用的 NAS 性能提升不大,没必要加。 - 群晖系统分布在所有硬盘,拔出一个不影响使用。但应用会有影响? +- NAS Docker 建议指定本地端口,否则重启容器会让端口发生改变,重启不会不影响 docker 配置。 +- 升级容器镜像,不影响内部数据库。群晖的「Docker 导出」只会导出安装镜像和配置,但不包括容器内部使用的数据库,用处不大。 ## NAS 套件 @@ -21,21 +23,6 @@ NAS 主要用于 Docker 服务、影视管理和文件存储备用这三方面 - Hyper Backup:本地多硬盘备份,防止一个硬盘丢失后重要文件损坏,比如 docker 容器的本地配置文件夹。 - Surveillance Station:管理 IP 摄像机以保护您的家庭和办公环境。借助 Surveillance Station,您可以透过网络浏览器,VisualStation 或移动设备观看和记录实时视频,设置定时记录,回放记录的视频,从而实现远程监控。发生重要事件时,您也会收到通知。注意,摄像头需支持 **ONVIF 协议**。 -## NAS Docker - -NAS Docker 建议指定本地端口,否则重启容器会让端口发生改变,重启不会不影响 docker 配置。升级容器镜像,不影响内部数据库。群晖的「Docker 导出」只会导出安装镜像和配置,但不包括容器内部使用的数据库,用处不大。 - -**Docker 容器安装**: - -推荐用 `docker-compose.yml` 安装 Docker,镜像会自动同步到 NAS 的容器列表中。docker-compose 使用参考 [TTRSS docker-compose](http://ttrss.henry.wang/zh/#%E9%80%9A%E8%BF%87-docker-compose-%E9%83%A8%E7%BD%B2)。 - -1. 选择「控制面板」>「终端机和 SNMP」,启动 SSH 功能。 -2. putty 连接群晖 SSH,进入 `docker-compose.yml` 所在路径,比如 `cd /volume3/storage`。 -3. 通过终端在同目录下运行 `sudo docker-compose up -d` 后等待部署完成。 -4. 关闭 SSH 功能。 - -注意:root 用户需在命令前添加 `sudo`,否则会提示 `Permission denied`。或通过 `sudo -i` 获取 root 权限。 - ## Docker 容器 ### 常用 @@ -61,6 +48,7 @@ NAS Docker 建议指定本地端口,否则重启容器会让端口发生改变 - [AList](https://github.com/alist-org/alist):开源的网盘管理工具,还支持对象存储,本地存储,FTP 等等。 - [Navidrome](https://www.navidrome.org/docs/installation/docker/):NAS 上的私人专属在线音乐库。 +- Emby/Plex:这两者都是热门的视频流媒体解决方案。终身会员的价格为119美元。Jellyfin 作为一个开源免费的选择,同样是一个不错的考虑。 - [LANraragi](https://github.com/Difegue/LANraragi):免费开源的漫画管理器,支持 zip/rar/targz/lzma/7z/xz/cbz/cbr/pdf 多种格式,可从网页和 [第三方客户端](https://github.com/Difegue/LANraragi/blob/32cc991e8c5bae3bbd57d163278048c50159ae9f/tools/Documentation/advanced-usage/external-readers.md) 浏览。 - [Tachiyomi](https://github.com/Suwayomi/docker-tachidesk):开源的漫画阅读应用,通过安装扩展插件,可以方便地订阅并聚合漫画源。使用前,需进入 Extensions,点右上角的 Enabled Languages 按钮,设置为中文源,然后会在页面底部发现中文漫画源。安装源后,进入 Souces 中点击进入对应源。 - [reader](https://github.com/hectorqin/reader):阅读 3 的服务器版,摆脱客户端,网页版即可查看。自定义替换进入文章页面左侧的「设置」-「过滤规则管理」。 @@ -85,7 +73,6 @@ NAS Docker 建议指定本地端口,否则重启容器会让端口发生改变 - [兰空图床](https://github.com/lsky-org/lsky-pro):图床已经部署在七牛云,用 Picgo 上传,没感觉有必要用它。 - [AutoBangumi](https://github.com/EstrellaXD/Auto_Bangumi):自动追番器,用以替代自我审查的 Bilibili。 - [nas-tools](https://github.com/jxxghp/nas-tools/wiki/%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B):号称能自动整理文件,但测试识别中很容易出错,暂不考虑。 -- Emby、Plex:流媒体方案,暂不考虑。 - Clash:代理服务器。 ## 影视整理 diff --git a/docs/services/TTRSS.md b/docs/services/TTRSS.md index 19f0e812a..d3e03cc91 100644 --- a/docs/services/TTRSS.md +++ b/docs/services/TTRSS.md @@ -2,7 +2,7 @@ article: false title: Tiny Tiny RSS icon: rss -order: 3 +order: 4 --- Tiny Tiny RSS 推荐用 [Awesome TTRSS](http://ttrss.henry.wang/zh/) 的 Docker 镜像,搭建步骤参考 [NAS 上搭建 Docker](../services/NAS.html#nas-docker)。Awesome TTRSS 镜像不含插件「no_title_counters」,导致 TTRSS 网页标题会显示未读 RSS 数量。 diff --git a/docs/services/dockers-on-nas/README.md b/docs/services/dockers-on-nas/README.md new file mode 100644 index 000000000..1e7057b33 --- /dev/null +++ b/docs/services/dockers-on-nas/README.md @@ -0,0 +1,47 @@ +--- +article: false +index: false +title: NAS 应用集合 +icon: process +--- + +网络附加存储(NAS)日益重要,它提供了一个平台,可以部署各种 Docker 服务,进而完成个人的自动化工作流程。而使用 `docker-compose.yml` 文件进行 Docker 部署无疑是其中最为便捷的方法。具体如何使用 docker-compose,可以参考 [TTRSS docker-compose 的教程](http://ttrss.henry.wang/zh/#%E9%80%9A%E8%BF%87-docker-compose-%E9%83%A8%E7%BD%B2)。 + +操作步骤如下: + +1. 打开「控制面板」,选择「终端机和 SNMP」,并开启 SSH 功能。 +2. 使用 putty 或其他 SSH 客户端连接到群晖,并导航到 `docker-compose.yml` 文件的所在目录,例如:`cd /volume3/storage`。 +3. 在该目录下,执行 `sudo docker-compose up -d` 并稍等片刻以完成部署过程。 +4. 为了系统安全,完成操作后不要忘记关闭 SSH 功能。 + +注意:root 用户需在命令前添加 `sudo`,否则可能遇到 `Permission denied` 的提示。另外,可以使用 `sudo -i` 来直接获得 root 权限。 + +## 部署问题 + +### 路径对照 + +虽然你可以轻易地采用我所分享的 compose 设置进行安装,但对于 volumes 部分,你需要重点关注本地存储的路径选择。拿 emby 作例,电视剧路径配置可以为 `/volume1/tvshows:/data/tvshows`。 + +在这里,`/data/tvshows` 是 Docker 的固定内部路径,不能修改。而 `/volume1/tvshows` 则是你可以根据实际情况自由定义的本地路径。 + +### 用户与组身份 + +UID 和 GID 分别代表用户身份和组身份标识。在启动 Docker 容器时,默认情况下,容器进程是以 root 用户(UID 0)运行。然而,从安全的角度出发,非 root 的运行模式会更加安全,因为这可以在容器受到攻击时,降低攻击者获取主机高权限的风险。在常规的设置中,UID 和 GID 通常被设置为 1000。但例如在群晖系统中,第一个用户的 UID 实际为 1026,而 GID 则为 100。 + +值得注意的是,当外部系统的用户标识与 NAS 上的 UID/GID 存在不匹配的情况时,可能会出现权限不一致的问题,进而影响到文件的正常访问权限。 + +### 文件夹访问权限 + +对于如 Emby 这类依赖外部存储资源的 Docker 服务,文件夹的访问权限是不可或缺的。一个直接的解决方案是将文件夹的权限设置为“所有人”(Everyone)。然而,这样的做法在安全性上存在隐患。一旦有人获得 Docker 的操作权限,相关文件夹很可能会被擅自更改,这只能作为一个短期的权宜之计。 + +下图以 Emby 服务中的电视节目存储路径 `/volume1/tvshows` 为实例,为了确保正常运行,我们可以临时为该文件夹授权“所有人”权限,但建议后续寻求更安全的权限管理策略。 + +![](https://img.newzone.top/2023-09-16-08-42-22.png?imageMogr2/format/webp) + + + +
+ +
+ + \ No newline at end of file diff --git a/docs/services/dockers-on-nas/emby.md b/docs/services/dockers-on-nas/emby.md new file mode 100644 index 000000000..041213499 --- /dev/null +++ b/docs/services/dockers-on-nas/emby.md @@ -0,0 +1,48 @@ +--- +article: false +title: Emby:打造你的家庭媒体中心 +order: 1 +--- + +Emby 为家庭提供了一个强大的媒体服务器,但在配置过程中,记得为你的媒体库目录授权“Everyone”,以确保 Emby 能够无障碍地访问它。为此,请打开共享文件夹的权限设置,选择对应的系统用户,并确保其具有读写权限。 + +使用 Emby 客户端播放视频需要 Emby Premiere。一次性购买终身会员的价格为 119 美元,但在黑五期间,通常可以以 99 美元的折扣价格获得。 + +```yml +# https://hub.docker.com/r/linuxserver/emby +version: "2.1" +services: + emby: + image: lscr.io/linuxserver/emby:latest + container_name: emby + environment: + - PUID=1026 + - PGID=100 + - TZ=Asia/Shanghai + volumes: + - /volume1/docker/emby/config:/config + # 媒体库映射 + - /volume1/tvshows:/data/tvshows + - /volume4/movies:/data/movies + - /volume3/Anime:/data/anime + - /volume4/Documentary:/data/documentary + - /volume4/Music/MV:/data/MV + #- /opt/vc/lib:/opt/vc/lib #optional + ports: + - 49172:8096 + - 49171:8920 + restart: unless-stopped +``` + +## 安全地从外部访问 + +如果你计划从外部访问 Emby,请务必启用 HTTPS。具体步骤可以参考[这里](https://www.bilibili.com/read/cv14814465/)。简单来说: + +1. 确保你的家庭网络已设置了 DDNS(通常通过路由器完成)。 +2. 下载与你的域名匹配的 Tomcat 证书版本。 +3. 解压后,你会看到一个 pfx 文件和一个包含密码的 txt 文件。 +4. 将它们都放置在 config 目录的特定路径中。 +5. 接下来,在 Emby 的“服务器 > 网络”设置中,输入你的公共端口和 DDNS 域名。 +6. 建议开启安全连接模式,这样可以更好地保护你的数据安全。 + +![](https://img.newzone.top/2023-09-15-05-32-43.png?imageMogr2/format/webp) diff --git a/docs/services/dockers-on-nas/navidrome.md b/docs/services/dockers-on-nas/navidrome.md new file mode 100644 index 000000000..a2ce0549c --- /dev/null +++ b/docs/services/dockers-on-nas/navidrome.md @@ -0,0 +1,38 @@ +--- +article: false +title: Navidrome:开源音乐服务器的新选择 +order: 1 +--- + +Navidrome 为开源自托管音乐服务器,提供音频流媒体服务。 + +鉴于 Roon 的定价较高且 Emby 和 Plex 主要针对视频,Navidrome 成为了一个免费的选择。它支持广泛的音频格式,如 MP3、FLAC、AAC 和 OGG 等,并能有效地为多个用户管理其音乐库,确保每位用户的体验互不冲突。 + +想要了解其他安装方法,你可以查看 [Navidrome 的官方教程](https://www.navidrome.org/docs/installation/docker/)。 + +```yml +version: "3" +services: + navidrome: + image: deluan/navidrome:latest + container_name: navidrome + #user: 1000:1000 # should be owner of volumes #群晖应该是 1026:100 # 使用 `id 用户名` 可以查看代码 + ports: + - "4533:4533" + restart: unless-stopped + environment: + # Optional: put your config options customization here. Examples: + ND_SCANSCHEDULE: 1h + ND_LOGLEVEL: info + ND_SESSIONTIMEOUT: 24h + ND_BASEURL: "" + volumes: + - "/volume1/docker/navidrome/data:/data" + - "/volume4/Music/Audio:/music:ro" +``` + +不过,Navidrome 并不提供歌词下载功能。如果你需要下载内置的歌词,可以通过 [MusicTag](https://www.cnblogs.com/vinlxc/p/11347744.html) 实现。 + +对于播放器的选择,推荐使用国产的 [音流](https://aqzscn.cn/archives/stream-music-versions) 播放器。它当前正处于内测阶段,支持 iOS 和 Android 平台,能够显示下载的内置歌词。 + +然而,Navidrome 也有其局限性:它不支持多行歌词展示,而且当你在搜索功能中直接搜寻特定歌曲时,可能会发现搜索结果是以专辑为单位的,导致直接搜索歌曲并不总是有效。