这个操作惊呆我了!海康存储 R1竟然可以这样部署Portainer

这个操作惊呆我了!海康存储 R1竟然可以这样部署Portainer

哈喽小伙伴们好,我是Stark-C~

最近到手了海康存储(HIKVISION)私有云R1 ,该机的卖点还是很多的,比如优秀的做工,强大的配置,以及炫酷的颜值,更牛批的是,它对底层BIOS没有任何限制,到手后还能各种折腾,可玩性极高!

不过话说回来,海康存储 R1毕竟也是一台成品NAS,也有自己的NAS系统,只不过可能因为目前偏向于个人和家庭用户,功能性不是很强,系统权限也是有所限制。就比如说Docker,虽说它有自己的Docker可视化操作前端,但它没有给到全开放的SSH终端操作权限,所以对于很多特定权限的Docker容器,以及docker compose堆栈也不能直接支持。

但是,我们可以在海康存储 R1上部署Portainer,这样我们直接就能通过docker compose堆栈的方式获取Docker容器的所有权限操作,并且Portainer本身就是一款非常优秀的可视化Docker容器管理工具,装上之后可以让海康存储 R1的docket功能直接起飞,也算是必装套件之一了。

这里需要说明一下:本文的灵感来自于本站@可爱的小cherry大佬发过的一篇文章,再此对大佬表示深深的膜拜与感谢~!

Portainer部署

🔺开始之前我们先在文件管理器(我的空间)中的Docker目录下新建一个portainer的文件夹,然后在该文件夹下在建一个“data”的子文件夹用于相关配置文件的持久化存储(也便于以后Docker容器迁移)。

🔺然后打开海康存储 R1自己的Docker管理器,分别点击“镜像管理--添加--官方库添加”。

🔺镜像名称输入“6053537/portainer-ce”并回车,选择第一个直接下载就可以了。为什么没有选择官方Portainer,因为这个是国内某大佬根据官方二次编译并汉化的,非常好用。

🔺如果网络没什么问题,这里会有一个下载进度。

🔺下载完成后点击镜像下面的“创建容器”。

🔺【容器名称】随意吧,不过建议命名为容器的名称“portainer”便于后期识别。

🔺【存储空间】添加我们前面在Docker目录下,portainer文件夹下的“data”子文件。

🔺装置路径设置为“/data”,类型改为读写。

🔺【端口设置】这里“容器端口”设置为9000,本地端口设置为不冲突的任意端口即可,“端口类型”选择TCP。

🔺然后重点来了,海康存储 R1的Docker管理器不是不能直接访问宿主机的 Docker 环境(/var/run/docker.sock)嘛,但是它可以在【环境】中将docker cli指令转换为环境变量来使用。而这,就是@可爱的小cherry大佬分享的海康SAO操作,说实话着实惊呆我了~~

所以,根据这个思路,我们部署Portainer直接在【环境】中加入以下变量即可:

# 映射docker.sock

--volume=/var/run/docker.sock:/var/run/docker.sock

# 重启策略

--restart=always

最后就没啥可设置的了,点“完成”按钮就搞定了Portainer的部署工作。

🔺完成之后点击“容器管理”,选择部署好的“portainer--详情”。

🔺选择【端口设置】,点击访问地址,就能一键打开部署好的Docker容器项目了。

Portainer体验

🔺Portainer打开时没有任何问题的,首次使用需要创建用户,密码需要设置12位字符及以上。

🔺然后选择本地环境的开始使用。

🔺点击“local”。

🔺在容器中也可以看到我们部署好的Portainer正在运行中。

🔺接着我们直接点击Portainer容器进入详情页面,在“存储卷”中,我们可以通过“主机存储卷”看到我们当前容器映射设备的真实路径。可以看到我这里的真实路径其实是“/drives/nvme_e1/Users/admin/Docker/portainer/data”,也就是说,在我的这台机器中,它的Docker目录真实路径为“/drives/nvme_e1/Users/admin/Docker”,而根目录为“/drives/nvme_e1/Users/admin”。

知道了这个我们就可以使用Portainer随意部署容器了,这里以目前非常火的一个简约博客项目『VanBlog』为大家演示。

它因为依赖数据库,所以使用docker compose部署更为方便。它的docker compose.yml代码为:

version: "3"
​
services:
  vanblog:
    image: mereith/van-blog:latest
    restart: always
    environment:
      TZ: "Asia/Shanghai"
      EMAIL: "someone@mereith.com"     # 邮箱地址,用于自动申请 https 证书
    volumes:
      - /volume1/docker/van-blog/static:/app/static    # 图床文件的存放地址
      - /volume1/docker/van-blog/log:/var/log    # 日志文件
      - /volume1/docker/van-blog/config:/root/.config/caddy    # Caddy 配置存储
      - /volume1/docker/van-blog/data:/root/.local/share/caddy     # Caddy 证书存储
    ports:
      - 80:80     # 端口映射,冒号前面不要本地冲突
  mongo:
    image: mongo:4.4.9      # 指定MongoDB数据库镜像版本,某些机器不支持 avx 会报错,所以默认用 v4 版本。
    restart: always
    environment:
      TZ: "Asia/Shanghai"
    volumes:
      - /volume1/docker/van-blog/mongo:/data/db      # MongoDB数据库的存放地址

而我们需要更改的基本就是它的映射路径与端口。所以按照我这边的情况,它实际的部署代码可以是这样的:

version: "3"
​
services:
  vanblog:
    image: mereith/van-blog:latest
    restart: always
    environment:
      TZ: "Asia/Shanghai"
      EMAIL: "someone@mereith.com"     # 邮箱地址,用于自动申请 https 证书
    volumes:
      - /drives/nvme_e1/Users/admin/Docker/van-blog/static:/app/static    # 图床文件的存放地址
      - /drives/nvme_e1/Users/admin/Docker/van-blog/log:/var/log    # 日志文件
      - /drives/nvme_e1/Users/admin/Docker/van-blog/config:/root/.config/caddy    # Caddy 配置存储
      - /drives/nvme_e1/Users/admin/Docker/van-blog/data:/root/.local/share/caddy     # Caddy 证书存储
    ports:
      - 8001:80     # 端口映射,冒号前面不要本地冲突
  mongo:
    image: mongo:4.4.9      # 指定MongoDB数据库镜像版本,某些机器不支持 avx 会报错,所以默认用 v4 版本。
    restart: always
    environment:
      TZ: "Asia/Shanghai"
    volumes:
      - /drives/nvme_e1/Users/admin/Docker/van-blog/mongo:/data/db      # MongoDB数据库的存放地址

知道对应的部署代码,我们就可以开始在海康存储 R1上部署了。

🔺首先在文件管理器(我的空间)中的Docker目录下新建一个“van-blogr”的文件夹,然后在该文件夹下建立static、log、config、data、mongo总共5个子文件夹。

🔺然后打开Portainer容器的“堆栈--添加堆栈”。

🔺“名称”随意,接着将我们修改之后的docker compose.yml代码复制粘贴到“Web编辑器”中的方框中。

🔺完成后点击页面下方的“部署堆栈”。

🔺很快就部署好了VanBlog项目需要的两个容器。

🔺回到海康存储 R1自己的Docker管理器中也可以看到两个容器也是正常运行中。

🔺详情中的“存储空间”映射的也没有问题。

🔺并且可以正常打开VanBlog容器。

最后

对于海康存储 R1来说,当我们部署好Portainer之后可以说Docker的可玩性时直接起飞,虽说我们不能和传统NAS一样直接通过SSH终端的docker cli命令部署容器,但是我们可以将任何docker cli命令都转换成docker compose来部署,相比docker cli命令的方式,docker compose堆栈部署还方便后期的维护与升级。

🔺海康存储(HIKVISION)私有云R1是一款四盘位高性能的家庭网络存储解决方案,最大支持96TB存储容量。它采用Intel四核处理器 N100,标配一个 DDR5内存插槽与双M.2 SSD设计,强大的性能足够个人及家庭用户的数据备份和文件共享需求。

I/O接口上也是非常丰富,包括3个USB 3.2 Gen2 10Gbps接口、1个 USB3.2 Gen2 Type-C接口及1个HDMI接口(4K 60fps),两个2.5G网口,适应多种扩展需求。

比较有意思的是,它的前面板刚还配备了1块2.86寸、60Hz触控屏,支持多种功能与主题设置,可实时显示温度、CPU占用、风扇、硬盘等状态信息,侧边还配备了透明侧板以及可调控炫彩RGB氛围灯,拥有极高的可玩性。

好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

海康威视存储服务器配置步骤 在配置存储服务器录像之前, 请先确认4200 客户端和存储服务器都已经安 装,即有电脑上有两个图标生成。安装软件时,勾选安装存储服务器,与软件 iVMS-4200安装在同一层目录下。 双击桌面快捷方式图标, 或进入安装目录 (默 认为: \iVMS-4200\iVMS-4200 Storage),打开存储服务器。在电脑右下角 任务栏中显示,表示服务器启动成功。 第一步:监控点的添加,在编码设备选择添加设备 如选择 IP /domain 方 式 输入地址,用户名和密码(设备的用户名和密码) 。 第二步:存储服务器启用后,设备管理-添加设备类型,选择存储服务器。 添加完成之后,服务器列表里面会出现存储服务器,选中存储服务器,在线设备 里面点击选中电脑的 IP ,点击添加至客户端,别名自定义,用户名 admin 密 码 12345 存储服务器添加完成后,点击远程配置,存储——常用 将硬盘选中,点 击格式化,将电脑盘剩余空间做预分配,此操作不影响电脑硬盘原有的数据,格 式化完成之后,按照提示重启存储服务器(此操作不能遗漏) 第三步:控制面板——录像计划 选择要录像的监控点,勾选存储服务器录 像,选择存储服务器的别名,配置下录像模板,点击保存 即可保存录像计划。 第四步:如果有多个监控点需要录像的(目前一个存储服务器最多支持 64 个监控点) ,点击右上角的复制到,可以复制到其他的监控点,录像计划和存储 服务器录像计划打钩,所需要录像的监控点打钩,确定 保存。 第五步:在远程回放,选择监控点,日历表上选择时间,如果录像成功,则 在对应日期上有橙色三角形,搜索到录像,表示录像成功。
### 安装和配置 Docker #### 海康威视 NAS 上启用 SSH 访问 为了能够在海康威视网络附加存储 (NAS) 设备上安装和配置 Docker,首先需要通过 SSH 远程登录到设备。大多数现代 NAS 支持此功能,具体操作如下: 1. 登录到 NAS 的 Web 控制台。 2. 寻找并进入设置中的“服务管理”部分。 3. 启用 SSH 服务。 这一步骤允许管理员通过命令行工具连接至 NAS 并执行后续指令[^1]。 #### 下载并安装 Docker 一旦获得了对系统的访问权,则可以继续下载适用于 Linux ARM 架构的 Docker 版本(假设使用的海康 NAS 是基于 ARM 处理器)。可以通过以下命令完成这一过程: ```bash wget https://download.docker.com/linux/static/stable/aarch64/docker-20.10.7.tgz tar zxvf docker-20.10.7.tgz sudo cp docker/* /usr/bin/ ``` 上述脚本会获取最新稳定版的 Docker 发行包,并将其解压后复制到系统路径下以便全局调用。 #### 配置 Docker 服务启动项 为了让 Docker 能够随系统自动启动,在 `/etc/init.d/` 文件夹内创建名为 `docker` 的新文件来定义初始化脚本: ```bash #!/bin/sh case "$1" in start) echo "Starting Docker..." dockerd & ;; stop) echo "Stopping Docker." killall dockerd ;; restart|reload|force-reload) $0 stop sleep 5 $0 start ;; *) echo "Usage: $0 {start|stop|restart}" esac exit 0 ``` 赋予该脚本可执行权限并通过 `update-rc.d` 命令注册为开机自启项目: ```bash chmod +x /etc/init.d/docker update-rc.d docker defaults service docker start ``` 此时应该已经成功设置了 Docker 环境,使其可以在每次重启之后保持激活状态。 #### 使用 Docker Compose 提升效率 对于复杂的应用部署场景而言,单独编写多个容器之间的依赖关系较为繁琐。因此推荐采用官方提供的辅助工具——Docker Compose 来简化多容器项目的编排工作流。其安装方式同样简单明了: ```bash DOCKER_COMPOSE_VERSION="1.29.2" sh -c "curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-aarch64 -o /usr/local/bin/docker-compose" chmod +x /usr/local/bin/docker-compose ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose ``` 至此便完成了整个环境搭建流程,用户现在能够轻松地利用 YAML 文件描述应用程序的服务结构,并借助单条命令实现一键构建与运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值