本文最后更新于 2024-06-29,文章可能存在过时内容,如有过时内容欢迎留言或者联系我进行反馈。

前言

本教程基于绿联的NAS设备DX4600 Prodocker功能进行搭建。前面有介绍过OneKey,而dockerCopilot便是OneKey的升级版,作者对其进行了重新命名,并且对界和功能都进行了全面的优化。

目前通过绿联自带的Docker管理器部署的dockerCopilot可能会导致绿联的Docker服务自动关闭,推荐使用SSH的方式进行部署。

简介

dockerCopilot 是一个Docker容器管理系统,它使用基于Web的界面来帮助用户管理他们的容器。它提供一个简单易用的界面来启动、停止、重启、删除和更新容器。此外,它还提供了容器的备份功能,以便用户在更换存储时可以恢复自己的容器创建参数。

部署

绿联Docker管理器部署

  1. 打开Docker管理器,在“镜像管理”中选择“本地镜像”,再选择“官方库”在“URL地址“内输入“0nlylty/dockercopilot:UGREEN​”,然后点击“确定”,等待镜像拉取。

  2. 下载完成以后,在“本地镜像”中找到它,点击“创建容器”。

  3. 勾选“创建后启动容器”,然后直接点击“下一步”。

  4. 将“基础设置”中的重启策略配置成“容器退出时总是重启容器”。

  5. 将“网络”中的“网络名称”配置成“host​”。

  6. 在NAS中创建一个目录,用于保存dockerCopilot的配置和数据,在“存储空间”内与容器的/data​目录建立映射,并配置为“读写”类型。

  7. 在“环境”中,配置好“secretKey”的值,然后点击“下一步”。

  8. 完成以上步骤后,检查一下,确认无误后直接点击“完成”。

  9. 浏览器中输入{IP}:12712​,即可访问。

SSH部署

  1. 打开“开启远程调试功能”,通过设备绑定的手机号短信验证码来申请root密码。

  2. 使用SSH工具来连接NAS,“主机”填写NAS的IP地址,“端口”是固定的922​,“用户名”是固定的root​,“密码”则是之前第1步打开“开启远程调试功能”所获得的验证码。

    这里演示使用的SSH工具是“FinalShell(https://www.hostbuf.com)”,如果你熟悉SSH,可以使用自己喜欢的工具进行连接。

  3. 添加好连接以后,在“连接管理器”中直接双击刚刚添加好的连接。

  4. 出现下图所示则表示连接成功。

  5. 在NAS中创建一个用于保存dockerCopilot数据和配置的目录。

  6. 登录绿联云社区(https://bbs.ugreengroup.com)查看自己的用户名。

  7. 通过SSH工具查询自己所创建的映射目录所在的存储空间/mnt/media_rw/{uuid}/.ugreen_nas/{userid}/{folder}​

    SSH登录后,很容易的在/mnt/​目录下找到挂载的存储,其名称一般为/mnt/dm-{index}/.ugreen_nas/{userid}/{folder}​
    其中index是一个序号,从0开始,建立了多少个存储就有多少。{userid}​是用户ID,其中userID是显然不会变化的。

    问题就出在这个index上,设备重启后,这个dm-{index}​是会变化的。

    如果你只有一个存储,那么无所谓,永远是dm-0​

    因此在命令行创建docker时,映射物理路径时,需使用/mnt/media_rw/{uuid}/.ugreen_nas/{userid}/{folder}​下的软连接路径,不能使用dm-{index}​的实际装载路径,否则一重启就完蛋。

  8. 在SSH工具中输入docker run​命令

    docker run -d --privileged -p 12712:12712 -e secretKey={password} -e DOCKER_HOST=unix:///var/run/docker.sock -e hubURL=https://docker.nju.edu.cn -v /var/run/docker.sock:/var/run/docker.sock -v /mnt/media_rw/009b87f9-de24-493e-b9cb-527d7490a557/.ugreen_nas/200390/Docker/dockercopilot:/data --restart=always --name dockerCopilot 0nlylty/dockercopilot:UGREEN
    • -d:后台运行容器

    • --name:为容器指定一个名称

    • --restart:容器重启策略(always​:只要容器退出就重启容器)

    • --privileged:特权模式(true​:开启特权模式)

    • -p:容器内部端口绑定到指定的主机端口(12712:12712​:主机(宿主)端口:容器端口)

    • -v:工作目录映射(宿主机路径:/data​)

      ​/mnt/media_rw/009b87f9-de24-493e-b9cb-527d7490a557/.ugreen_nas/200390/Docker/dockercopilot:/data​在此路径中

      009b87f9-de24-493e-b9cb-527d7490a557”表示NAS中某个存储空间的UUID;

      200390”表示你在绿联云社区(https://bbs.ugreengroup.com)的用户名,需要根据你实际的用户名进行修改此参数;“Docker/dockercopilot”表示你在NAS中某个存储空间内所创建用于映射的工作目录,需要根据你实际创建的映射工作目录进行修改此参数;

    • 0nlylty/dockercopilot:UGREEN:镜像。

    • secretKey={password}:是登录dockerCopilot后台的访问密码,请将{password}​修改成你自己用于访问dockercCopilot后台的密码。

      PS:密码长度要大于8位,且不能为纯数字!!!

  9. 根据自己实际情况修改上述所说的docker run​命令以后,输入命令,然后回车,出现下图所示则表示成功。

  10. 浏览器中输入{IP}:12712​,即可访问。

使用

登录

  1. 网址填写ip地址或者域名,端口为固定的12712,密钥填写之前配置的secretKey的值,然后点击“OK”。

更新容器

  1. 选择需要更新的容器,点击“更新”。

    可以自己输入指定的目标版本号,更新到指定版本。

清理镜像

  1. 在“镜像”中,点击“清理镜像”。

    • 无TAG镜像

      更新完后的旧版本镜像标签都会变成None。

    • 未使用镜像

      顾名思义,就是拉取了镜像,但是未创建容器的镜像。

任务进度

  1. 在“进度”中,可以查看容器的更新进度和容器恢复进度。

备份容器

  1. 在“备份”中,点击“新建备份”。

恢复容器

  1. 在“备份”中,选择需要恢复的备份,点击“恢复”。