小天管理 发表于 2024年9月21日 发表于 2024年9月21日 家庭内网服务分享 目录 部署原则 Sun-Panel 虚拟化平台 NAS 存储系统 Wireguard Adguard Home Nginx Proxy Manager Uptime Kuma Slink Code Server Portainer Docker Copilot GitLab Gitea Calibre-Web Navidrome Emby Flatnotes Memos Wiki.js Excalidraw DrawIo Mind-Map Stash 网站推荐 结尾 部署原则 个人认为家庭内网服务应该尽量遵守以下 2 个原则: 开源 Docker 化部署 开源意味着所有人都能查看其源代码,至少在一定程度上能够尽可能的避免安全相关的问题。同时开源往往也意味着免费使用。 Docker 化部署屏蔽了硬件、环境以及其它依赖相关的各种问题,不用和特定的平台相互绑定,使得服务的后续迁移也非常便捷。 Sun-Panel Sun-Panel 是一个漂亮的服务器、NAS 导航面板、Homepage 、浏览器首页。 Github: https://github.com/hslr-s/sun-panel 部署效果如下: 类似比较出名的个人导航页还有 Heimdall 。( https://github.com/linuxserver/Heimdall) Sun-Panel 支持局域网和互联网 2 种模式,UI 更加简洁美观,个人更加倾向于使用 Sun-Panel 。 虚拟化平台 All in one 的玩家对虚拟化平台应该都非常熟悉。现在主流的虚拟化平台有 VMware ESXi 、PVE 、Unraid 、Hyper-V 等等。 个人使用过一段时间的 ESXi ,体验还是非常不错的。 但是 ESXi 存在对新硬件的支持不太友好的问题。个人就遇到过最新版本的 ESXi 无法原生驱动螃蟹网卡的问题。加上 ESXi 是需要付费使用的,所以最后放弃了 ESXi 。相对的,PVE 对新的硬件支持程度非常好。 遵从开源免费的原则,毫无疑问应该使用 PVE 。 另一方面,虚拟机的开销往往比较大,PVE 的 CT 容器是虚拟机的轻量级替代品。 没有特殊情况,推荐使用 CT 容器,而不是虚拟机。 PVE: https://pve.proxmox.com/wiki/Main_Page 部署效果如下: NAS 存储系统 个人长期使用的 NAS 存储是极空间 Z4 Pro 以及一台自己组装的黑群晖。 单纯的个人体验方面,极空间虽然存在一些无关紧要的小毛病,但是综合体验是大于群晖的,特别是手机应用方面。 上述只是个人体验方面的观点,为了避免引战,这里不再展开叙述。 黑群晖是自己组装的,机箱使用的是乔思伯 N2 ,PCIE 扩展了万兆网卡。 慢慢开始以极空间作为主力 NAS ,黑群晖只是当做备份存储。 Wireguard Wireguard 是 Linus Torvalds 为数不多夸过的技术,称赞它是:it's a work of art 。 Wireguard 也是我个人使用体验过的最好的内网穿透软件。 Github: https://github.com/wg-easy/wg-easy 后面会专门写一篇文章来介绍《在外访问家庭内网服务的最佳姿势》。 部署使用的是 Docker 部署的方式:部署效果如下: AdGuard Home AdGuard Home 是一款非常出色的 DNS 服务器,支持广告过滤和拦截,可以和软路由中的 MosDNS 等 DNS 软件搭配使用。 Github: https://github.com/AdguardTeam/AdGuardHome 部署效果如下: 同样出色的 DNS 服务还有 Pi-hole ( https://github.com/pi-hole/pi-hole)。 之所以不选择 Pi-Hole ,是因为 Pi-Hole 的 DNS 重写不支持泛域名,而 AdGuard Home 支持。 Nginx Proxy Manager Nginx Proxy Manager 是一款极其简单易用的 Nginx 反向代理软件。 Github: https://github.com/NginxProxyManager/nginx-proxy-manager NPM 需要绑定 80 和 443 端口,推荐基于 PVE 的 CT 容器来部署。 部署效果如下: 除了反向代理之外,NPM 还支持泛域名 SSL 证书的申请,简单易操作。 Uptime Kuma Uptime Kuma 是一款简单易用的服务监控软件,界面非常的简洁,易上手。 Github: https://github.com/louislam/uptime-kuma 部署效果如下: 此外当服务出现异常的时候,Uptime Kuma 还支持微信消息提醒。 下面是升级 Wireguard 镜像的过程中,Uptime Kuma 检测到家庭内网 wireguard 服务不可用,自动发出的微信报警提醒: Slink Slink 是一款自建图床软件。 Github: https://github.com/andrii-kryvoviaz/slink 部署效果如下: 同样出色的自建图床软件还有 Picsur 。( https://github.com/CaramelFur/Picsur) 但是 Picsur 的 Docker 部署依赖较多,所以最后还是选择了 Slink 。 大家可以自行尝试部署体验。 Code Server VS Code in the browser 。程序员对 VS Code 应该不会陌生。 Github: https://github.com/coder/code-server 平常用来刷一刷 LeetCode 挺好的。 部署效果如下: Portainer Portainer 是一款 Docker 管理 UI ,比较简单和易用。 不过个人还是倾向于命令行的方式来管理 Docker 。 Github: https://github.com/portainer/portainer 部署效果如下: Docker Copilot Docker Copilot 可以用来一键升级 Docker 镜像和容器。 Github: https://github.com/onlyLTY/dockerCopilot 部署效果如下: 同样功能的服务还有 watchtower 。( https://github.com/containrrr/watchtower ) 由于极空间暂时没有开放 ssh (听说下一个大版本会开放),导致 Docker 相关的一些操作权限有限。 所以还是使用的上面 Docker Copilot 专门针对极空间的 Docker 镜像版本。 GitLab GitLab 是一款 Git 自托管一体化软件开发服务,社区版本 GitLab-CE 可以免费部署。 Website: https://about.gitlab.com/install/#debian 个人主要用来托管刷 LeetCode 的代码。 推荐基于 PVE 的 CT 容器来安装,这样编程语言的各种环境都可以自己配置。 部署效果如下: Gitea 轻量级的 Git 自托管一体化软件开发服务。基于 Go 语言开发,内存占用明显比 GitLab 少,速度也非常快。 Github: https://github.com/go-gitea/gitea 由于个人习惯问题,代码托管暂时使用的是 GitLab ,后续可能会迁移到 Gitea 。 部署效果如下: Calibre-Web Calibre-Web 是一款知名的电子书籍管理软件,支持主流的电子书格式,同时可以非常方便的在线阅读。 比较好的地方在于支持手动刮削调整书籍封面,支持大文件 PDF 的在线阅读。 Github: https://github.com/janeczku/calibre-web 部署效果如下: Navidrome Navidrome 是一款非常简洁好用音乐播放服务器。 Github: https://github.com/navidrome/navidrome 部署效果如下: 虽然极空间 NAS 自带极音乐,体验过一段时间,感觉非常不错,但是手机和电脑上没有单独的原生 APP 。 刚好 Navidrome + 音流可以完美的解决。 电脑和手机客户端推荐使用音流。( https://github.com/gitbobobo/StreamMusic ) Mac 安装效果如下: Emby Emby 、Jellyfin 、Plex 都是非常流行的个人媒体影音服务器。都有完善的各平台客户端,体验都非常不错。 Emby: https://github.com/MediaBrowser/Emby Jellyfin: https://github.com/jellyfin/jellyfin Plex: https://github.com/plexinc/pms-docker 部署效果如下: 自从买了 Apple TV 和极空间之后,由于极空间自带的极影视,在 Apple TV 上有单独的原生客户端,整体的体验还算不错,所以后续就很少再折腾影音服务器了。 Flatnotes 笔记类的应用非常多,Flatnotes 是一款体验非常好的在线 markdown 编辑器。 极其轻量化、支持全局搜索。 减少了其它不相关的功能,让人更加专注于写作本身。 Github: https://github.com/dullage/flatnotes 个人所有的 markdown 文章都是由它编写。 部署效果如下: Memos Memos 是一款轻量级的碎片化笔记服务。可以轻松快速的捕捉和分享你的伟大想法。 Github: https://github.com/usememos/memos 部署效果如下: Wiki.js Wiki.js 恰如其名,是一款 Wiki 软件。支持 markdown 语法,可以用来当做个人的系统知识库。 Github: https://github.com/requarks/wiki 部署效果如下: Excalidraw Excalidraw 是一款非常方便的在线白板绘画服务。 Github: https://github.com/excalidraw/excalidraw 部署效果如下: DrawIo DrawIo 是一款在线流程图绘画服务。收费服务 Process On 的替代品。( https://www.processon.com/) Github: https://github.com/jgraph/docker-drawio 个人所有的流程图都是使用 DrawIo 绘画。 部署效果如下: Mac 和 Windows 上也有对应的客户端软件。( https://github.com/jgraph/drawio-desktop ) Mind-Map Mind-Map 是一款非常不错的在线思维导图绘制服务。 Github: https://github.com/wanglin2/mind-map 部署效果如下: Stash An organizer for your porn, written in Go. Github: https://github.com/stashapp/stash Demo image: 网站推荐 推荐一个非常好用的 Self-Hosted 的网站。( https://selfh.st ) 该网站可以不同的应用分类查询比较流行和常用的开源应用,例如搜索 DNS 相关的应用: 该网站还贴心的附带了精美的应用图标下载功能,例如搜索 Adguard: 其他 icon 下载网址: https://icons8.com https://www.iconfont.cn 结尾 最后都看到这里了,希望大家能够在评论区分享一下自己觉得比较实用或者有趣的自托管项目。 后续我会继续分享《在外访问家庭内网服务的最佳姿势》。
已推荐帖子