基于 Leap Micro 5.4 的 Nextcloud 家庭实例

2023-04-27 | Hanjingxue Boling | CC-BY-SA-3.0

基于 Leap Micro 5.4 的 Nextcloud 家庭实例

这周是忙碌的一周!

Leap 15.5 进入候选发布阶段!根据路线图,用户可以期待在 6 月 7 日 openSUSE 大会 2023 后不久发布的最终版本。

我们的不可变主机系统 Leap Micro 5.4 的最终版本现已推出。

Leap Micro 5.4 正式发布后,Leap Micro 5.2 将自动被标记为生命周期结束(EOL),因为我们只发布给定版本的安全更新,直到下一个版本发布。我们希望在未来两年内继续使用 5.2 的用户应考虑切换到具有商业支持的 SLE Micro

SLE Micro 更新使 SELinux 默认进入 enforcing 模式并进行调整。Leap Micro 不是传统的发行版,而是用于运行虚拟机和容器化工作负载的轻量级主机系统。

为了保持安全,Leap Micro 5.2 用户可以进行全新部署,这应该会花费约 5 分钟的时间;或者考虑运行以下操作,这在下一个版本发布之前基本上不会触及主机。Leap Micro 5.3 用户仍然可以保留现有版本并直到下一个 Leap Micro 版本发布前享受更新。我特别提到这一点是为了强调此发行版的零接触性质。

sudo transactional-update shell

zypper dup --releasever 5.4

exit

reboot # Enjoy

这篇文章是我们之前实战上手文章的续篇,重点介绍家用 pi-hole 无广告浏览。

在本文中,我们将利用上一篇文章中现有的 Pi-hole 并设置一个 Nextcloud AIO 的家庭实例。这样的解决方案特别适合重视隐私的用户,或者像我一样希望连接 Apple 和 Android 设备的用户。

加上之前动手操作的说明,本教程应花费不到 15 分钟的时间。

我的配置

我对 Leap Micro 的个人用例是尽可能多的无广告浏览、本地服务的 DNS 条目,以及一个 Nextcloud 实例作为在我妻子的 iPhone、孩子的平板电脑和我的 Android 手机之间共享图片和视频的桥梁。我的私人家庭服务器配置是 Raspberry Pi 4 8GB 和一块通过 USB 3.0 转 SATA III 连接至 Raspberry 的 1TB SDD。我通过 TP Link Deco X20 接入网络。我还使用 Deco 的端口映射和静态公网 IP 向公网公开服务。

Raspberry Pi 有一个基于其 MAC 地址的保留地址,以保持简单配置。如果你有一个动态公网 IP,你可以考虑一些动态 DNS(DDNS)解决方案。

我个人很高兴在装载有 Leap Micro 5.3 以及 Pi-hole 的 Raspberry Pi 4 8GB 上使用所描述的设置,以实现无广告浏览和将我的 NextCloud 实例映射到本地地址。

如果您只想测试一下,虚拟机也可以运行此方案;只需确保虚拟机的虚拟网络接口处于桥接模式或使用传入连接转发。您只需单击两次,即可使用 NetworkManager 轻松完成设置。否则,您将无法访问虚拟机服务的 Web 管理,并且这篇文章变得毫无意义。

我在使用 Leap Micro 时得到的好处是机器不需要我的任何关注。该系统有自动更新和自我修复功能。电脑会在(默认设置)定义的维护窗口期内自动重新启动到更新的快照,如果有需要我注意的问题,那么我只需通过 Web 浏览器中的 Cockpit 界面解决它。

01

Leap Micro 是一个具有只读根目录的不可变操作系统。openSUSE 通过 btrfs 快照和工具解决了这个问题,这些工具在系统识别到引导至新快照失败时,自动回滚并引导到以前的快照。

现有的设置

如上一篇文章所述,用户应该已经拥有在 Leap Micro 5.4他们自己的公共域上运行的现有 Pi-hole 设置。

警告:运行 Nextcloud AIO 需要公共域。除非您使用自签名证书,否则您将遇到 SSL 错误,这样的设置超出了本文的范围,而且这样的解决方案也不实用。

为 NextCloud 创建本地 DNS 条目

对于本地访问,用户应该创建一个本地 DNS 条目,其中的本地 IP 地址指向预期的域 nextcloud.mydomain.org。

部署 NextCloud AIO 容器

只需遵循 https://github.com/nextcloud/all-in-one 的说明,我就尝试仅使用 podman 运行 AIO 镜像;但是,自述文件提供的解决方案非常依赖 docker,所以您必须使用 podman-docker;此软件包会在下一个 Leap Micro 版本中可用。

在我的设置中,我确实在 /srv/nextcloud 下的 Leap Micro 主机上挂载了一个 1TB 的磁盘。

您可以根据自己的喜好随意调整 NEXTCLOUD_DATADIR。我个人在使用 Pi-hole 设置进行域验证时遇到了问题,因此我确实按照自述文件说明使用了 -e SKIP_DOMAIN_VALIDATION=true

即使在不可变系统上,/srv/var 等目录当然也是可写的。

如果你正在使用家庭路由器的端口映射来向公网公开服务,你需要从路由器向 Leap Micro 主机公开和映射端口 80、8443 和 3478(对话容器)。

# mkdir -p /srv/nextcloud

我的 btrfs 格式的 1TB WD Blue SSD 驱动器的 fstab 条目通过 AXAGON ADSA-1S6 USB 转 SATA 连接器连接到我的 Raspberry Pi。

您可以使用 blkid 获取您的 UUID:

# grep nextcloud /etc/fstab

UUID="881ab56d-d577-4d12-8014-f5a76f3febe6" /srv/nextcloud btrfs noatime 0 0

现在让我们部署 Nextcloud AIO 镜像。

请注意,我们的部署将在重启后继续存在。我强烈建议跳过域验证(示例命令的一部分),尤其是在描述的设置中。

# docker run \
--sig-proxy=false \
--name nextcloud-aio-mastercontainer \
--restart always \
--publish 80:80 \
--publish 8080:8080 \
--publish 8443:8443 \
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
-e NEXTCLOUD_DATADIR="/srv/nextcloud" \
-e SKIP_DOMAIN_VALIDATION=true \
nextcloud/all-in-one:latest

我们快完成了。剩余内容只是按照浏览器的说明进行操作。

01

祝你玩得愉快!


原文:Home instance of Nextcloud with Leap Micro 5.4, Leap Micro 5.2 is EOL, Leap 15.5 enters RC,作者:Lubos Kocman

分享帖子: