在 docker 中安装 DSM

CListery ARE YOU OK?

是的,你没有看错,这篇文章的标题是在 docker 中安装 DSM,而不是在 docker 中安装 DSM,这里的 DSM 是指 Synology DSM,也就是群晖的操作系统,这里我们将在 docker 中安装一个虚拟的 DSM,这样我们就可以在不购买群晖硬件的情况下体验 DSM 的功能了。

环境

  1. 宿主机: 20.04.6 LTS (Focal Fossa)
  2. docker: Docker version 24.0.6, build ed223bc
  3. docker compose: Docker Compose version v2.21.0
  4. DSM: 7.2.1-69057-1

配置

  • 创建 docker-compose.yml

更多的配置可以参考 Virtual DSM

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
version: '3'
services:
dsm:
container_name: dsm
image: docker.io/clistery/virtual-dsm:latest
environment:
URL: 'https://cndl.synology.cn/download/DSM/release/7.2.1/69057-1/DSM_VirtualDSM_69057.pat'
DISK_SIZE: '100G'
DISK2_SIZE: '100G'
RAM_SIZE: '4G'
CPU_CORES: '4'
devices:
- /dev/kvm
- /dev/net/tun
- /dev/vhost-net
device_cgroup_rules:
- 'c *:* rwm'
cap_add:
- NET_ADMIN
ports:
- '5000:5000'
volumes:
- ${PWD}/pat:/pat:ro
- ${PWD}/storage/sda1:/storage:rw
- ${PWD}/storage/sda2:/storage2:rw
restart: on-failure
stop_grace_period: 1m

其中镜像 docker.io/clistery/virtual-dsm:latest 是基于 Virtual DSM 构建,在其之上做了一些加速优化,及一些工具配置,也可以直接替换为 vdsm/virtual-dsm:latest。

  • 创建目录
  1. 创建 pat 目录
  2. 创建 storage 目录

创建完成后的目录结构如下:

1
2
3
4
.
├── docker-compose.yml
├── pat
└── storage

安装加速(可选)

如果使用的镜像是 virtual-dsm:latest,那么可以跳过这一步。这里我们实际安装的版本是 7.2.1,但是由于 7.2.1 中系统关键文件无法解包,只能先通过 7.0.1 解包出关键文件,再进行 7.2.1 版本的安装

  1. 进入 pat 目录

  2. 下载 PAT 文件

    链接使用了大陆加速,如果无法下载,将链接中的 cndl.synology.cn 替换为 global.download.synology.com

启动

1
docker-compose up -d

然后就可以打开 docker 日志查看安装进度了,直到看到如下日志,就可以用浏览器通过:5000 端口访问 docker 容器下的 DSM 了

1
2
3
❯ --------------------------------------------------------
❯ You can now login to DSM at port 5000
❯ --------------------------------------------------------
  • 标题: 在 docker 中安装 DSM
  • 作者: CListery
  • 创建于 : 2023-12-06 15:40:04
  • 更新于 : 2024-11-15 15:53:32
  • 链接: http://clistery.github.io/2023/12/06/dsm/install-with-docker/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论
目录
在 docker 中安装 DSM