Raid 阵列
由于我买了 三块硬盘,所以我对 raid 的组合是:2块硬盘组 raid 1 存放比较重要的数据,然后剩下一块硬盘直接用,存放稍微不重要的数据。
组 raid 也很简单,omv 的 web 界面,存储器 -> 软 RAID,点击创建,按照自己的需求组自己的 raid 阵列即可。
可能遇到的问题, 点击 创建 时,发现找不到 磁盘设备, 可以尝试 存储器 -> 磁盘,点击 擦除 选项。
组完 raid 阵列以后,就可以使用 文件系统,挂载 磁盘了。
存储器 -> 文件系统,点击创建。然后点击 挂载。
photoprism 软件
photoprism 是一个优秀的管理相册的工具
既然 omv 中有 photoprism 插件,那就优先用插件,不用 docker 安装。
但是用 omv 安装 photoprism 是存在问题的。原因是底层用了 podman 管理镜像,所以在启动 photoprism 插件前,要把 podman 的源换成国内源。
podman 全局配置文件存放在这个路径:/etc/containers/registries.conf
在 omv6.x 版本中 podman 的配置使用的是 v2 格式。如果不小心用 v1 格式,会提示错误。
v2配置格式如下:
# 例:使用 podman pull registry.access.redhat.com/ubi8-minimal 时,
# 仅仅会从registry.access.redhat.com去获取镜像。
# 如果直接使用 podman pull ubuntu 时,没有明确指明仓库的时候,使用以下配置的仓库顺序去获取
unqualified-search-registries = ["docker.io", "registry.access.redhat.com"]
# 配置仓库的地址,可以直接在location里配置国内镜像例如:docker.mirrors.ustc.edu.cn
# 直接在location里配置的时候,可以不需要后面的 [[registry.mirror]] 内容,
# 但是这样只能配置一个镜像地址,这个镜像挂了就没法尝试其它镜像
[[registry]]
prefix = "docker.io"
location = "docker.io"
# 当使用 podman pod create 命令时候,因需要从k8s.gcr.io拉取 pause:3.2 镜像,但是该站点在国内被墙了。
# 所以给该站点搞个镜像。以下镜像是阿里云第三方用户,非官方。
# 或者 registry.aliyuncs.com/googlecontainersmirror ,也是第三方用户。
# 目前没找到国内官方的镜像。gcr.mirrors.ustc.edu.cn 返回403不能用了
[[registry]]
prefix = "k8s.gcr.io"
location = "registry.aliyuncs.com/google_containers"
# 在这里可以配置多个镜像地址,前提是至少有一个[[registry]]配置。
# 需要注意的是,无论 unqualified-search-registries 选择了哪个仓库,
# 都会先从这里的上下顺序开始去拉取镜像,最后才会去匹配上 prefix 的 [[registry]]
# 配置的 location 位置拉取镜像。所以这里需要注意,上面配置的不同仓库类型,这里配置的镜像并不
# 能是通用的,所以 unqualified-search-registries 配置了多个仓库的时候,就最好直接使用
# [[registry]] 的 location 指定镜像地址,不要配置 [[registry.mirror]] 了。
# redhat 的国内镜像暂未发现。
[[registry.mirror]]
location = "docker.mirrors.ustc.edu.cn"
[[registry.mirror]]
location = "registry.docker-cn.com"
安装插件:
omv web 界面 -> 插件 -> (搜索 photoprism) -> 然后选中安装。
安装完成后 ctrl + shift + R 刷新 web 界面。
omv web 界面 -> 服务 -> photoprism -> 配置相应的信息 -> 启动,生效 即可。
jellyfin 软件
jellyfin 是一个非常优秀的影音管理软件。
jellyfin 没有插件,我们只能通过 docker 来安装部署。
第一步,在 omv 的 web 界面 -> 存储器 -> 共享文件夹 ,中创建存放 jellyfin 的配置以及电影的目录。
上图,则为创建后的结果。其中,名称和相对路径 是我们需要填写的。
之后,我们需要 绝对路径 这个值。
第二步,在 omv 的 web 界面 -> 系统 -> omv-extras -> portainer ,点击 打开 web 页。 (如果,没有安装 omv-extras 的话,请移步上一篇文章,安装 omv-extras)
第三步,点击 local -> containers,可以看到其中已经运行的两个容器,portainer 和 yacht 。我们要在这个基础上运行第三个容器 jellyfin 。
第四步,点击 Add container ,添加容器。需要写入的参数,如下图所示:
- Name:自定义容器的名称
- image:docker 镜像的名称以及tag,此处要填 jellyfin/jellyfin:latest
在往下,填写 volumes 信息,需要填写三个 volume:cache、config、movie
container 的类型要选择 Bind,不然无法填写 host。
host 值是 上方我们记录的 绝对地址/cache、绝对地址/config、绝对地址/movie
绝对地址是 jellyfin 中第一张图中我们所创建的共享文件夹的值。
network 我选择的是 host ,方便一些。
最后,点击 deploy the container 部署容器。
当部署成功后,访问 nas的 ip + 8096 就可以访问以及配置 jellyfin 了。
有了 jellyfin 还是不能看电影,jellyfin 只是管理电影的,它并不关心如何下载电影,所以我们需要一个工具来下载电影。
aria2 软件
aria2 软件是通过磁盘链接或者种子快速下载的一个软件。
aria2 同样是用 docker 来安装的。
在 portainer 的 containers 中点击 Add container 创建一个容器:
- Name:自定义容器的名字
- Image:docker 镜像的名称和 tag,在此处填写 p3terx/aria2-pro:latest
需要填写两个 volume ,由于使用这个 aria2 就只是为了下载电影,所以直接就复用了 jellyfin 的目录,同时 downloads 绑定的地址就是 jellyfin 中存放电影的地址。
- config 的 host 值是 jellyfin绝对地址/aria2/config
- downloads 的 host 值是 jellyfin绝对地址/movie
network 同样是 host 类型。
env 环境变量需要填写三个值:
- RPC_SECRET:需要填写一个 token 值,建议可以随机生成一个 uuid 作为 token 值(之后要用)
- RPC_PORT:rpc 的端口 6800
- LISTEM_PORT:监听的端口 6888
然后点击 deploy the container 启动容器即可。
虽然我们已经安装了 aria2 ,但是它并没有自带图形化界面,所以我们还需要安装一个 docker,可以图形化的操作 aria2。
同理,在 portiners 的 containers 中 Add container 添加一个容器:
Name:自定义容器的名称
Image:容器的名称和 tag,此处填写: p3terx/ariang
这里,我们需要手动添加一个 端口转发,点击 publish a new network port ,container 的 6880 转发到 host 的 6880 端口上。
日志,这里,在 Options 选项中填写一个 max-size: 1m 的参数。
最后点击 deploy the container 部署启动容器。
部署成功后,使用 nas 的 ip + 6880 进入 aria2 的图形化界面。进入后,会触发一个 错误,不要急,那是因为还没有填写 token。
在 ariaNg 设置 -> RPC 中填写 aria2 RPC 密钥。这个密钥是 在创建 aria2 时填写的 token 值。
然后,可以愉快的使用 aria2 来下载电影了,下载好电影后,就可以直接在 jellyfin 中观看了。
Transmission 软件
这个还没有研究明白,之后弄明白了,再分享吧,它的作用是互联网的共享以及影音的下载,或许是需要一个 公网 ip 吧。