🤔 还在为版本更新烦恼?想要轻松管理你的Docker容器和镜像?今天极空间的Docker玩法,这些问题就能帮你解决!
🌐 「docker copilot」 —— 专为容器和镜像管理设计,让Docker监测、更新、备份变得简单快捷!
🔥 功能亮点:
- 容器镜像监控:随时掌握容器和镜像的最新状态。
- 一键升级:支持一键升级到最新版本,省时省力。
- 安全备份:提供容器备份和恢复功能,数据安全有保障。
- 多平台支持:专为NAS用户定制,全面提升使用体验。
🎉 体验升级:
- 进度追踪:更新进度一目了然,操作结果清晰可见。
- 镜像管理:旧容器不自动删除,方便管理。
👍 如果你也是NAS和Docker的爱好者,千万不要错过这个管理神器!快跟着@可爱的小cherry 的教程,快速部署「docker copilot」,我们边用边等SSH功能,让我们共同期待即将到来的SSH功能!已经在外测啦 ,届时,我们将能够通过docker cli部署更多常用的容器和镜像管理工具。
前言
不知道爱折腾小伙伴们,有没有版本焦虑?反正cherry有深深的强迫症和版本焦虑,总是喜欢把NAS版本、镜像版本升级到最新的,折腾完以后的心情,别提多美妙了!
一般来说,我们会使用watchtower、diun、what up docker等项目来监控和更新容器镜像的版本,但是这些容器部署需要一个核心文件,那就是docker.sock,比较可惜的是极空间目前还没有开放这个系统文件的映射方法。
不过,虽然无法在极空间内没办法映射docker.sock文件,并不意味着极空间用户没办法对镜像进行监控和升级!
为了防止大家不知道,今天cherry再把极空间论坛中很热门的一款项目「docker copilot」做个介绍,该项目作者为@0nlylty,利用极空间内置的api实现对容器镜像的管理,通过这个项目,我们可以简单明了的看到极空间内目前各个容器的版本、镜像版本,以及最新的镜像版本,并支持一键升级。
一、对docker访问进行加速
目前大家在折腾docker项目时,遇到最大的问题就是当前的网络环境不友好,无法直接访问镜像库。
所以在部署docker copilot之前,我们必须先解决NAS访问docker的网络问题,否则docker copilot无法完成无米之炊,即无法帮助我们快速检测容器镜像版本,也没有办法实现镜像更新。
好在极空间在docker访问上,给出了足够多的解决方案,如果你最近在选购NAS产品,又担心docker的使用,那完全可以消除对极空间的顾虑~
🔻方案一:常用镜像
这些镜像都是通过极空间的网络下载的,无需额外直接就可以直接使用,因此后续更新也可以通过极空间内置服务进行更新,十分方便。
🔻方案二:镜像仓库
在【镜像】-【仓库】-【设置】里,我们可以把网上找到的第三方镜像源填入,比较知名的是1panel、daocloud等。
后续我们可以通过这些镜像库下载容器镜像,而且这些镜像都很好辨认,有镜像前缀以及镜像来源。当我们使用这些镜像源之后,docker copilot的检测、更新也会从这些镜像源里获取。
🔻方案三:docker proxy
如果我们自己有一些优化网络的方法,那么也可以直接极空间新更新的docker proxy功能,在代理里填入猫咪的服务端口,并保存重启引擎。这样docker copilot检索容器镜像的时候,也会通过proxy来走,更加全面。
二、系统部署
1、下载镜像
无论之前选择哪种方法,我们现在都已经可以在极空间内实现docker访问和下载了,因此我们搜索镜像0nlylty/dockercopilot:ZSPACE-DEV
下载。
2、配置容器参数
等镜像下载完成以后,我们来到【镜像】-【本地镜像】页面,选择docker copilot后点击添加到容器,或者直接双击镜像开始配置容器。
我们把容器名稍微改的简洁一点,然后把【启动性能限制】关掉,因为极空间的NAS性能足够,不需要节约这一点资源限制。
第一步:【文件夹路径】中,我们只需要装载容器内的/data
目录就行了,文件/文件夹可以自由选择,我这里选择的是我docker的集中管理地址,个人空间/docker/copilot
。
第二步:【网络】里,点击更换按钮,我们需要把默认的bridge网络更改为host网络模式,这样copilot才能获取到一些端口信息。
第三步:【环境】中,我们需要填入极空间的账号(一般就是管理员的手机号),以及一个自定义的密钥(后续登录系统使用)。
3、配置远程访问
容器启动完成以后,我们打开远程访问应用,新建一个远程连接,IP为127.0.0.1或者NAS的ip,端口填写12712即可。
三、系统使用
通过极空间的远程访问功能打开docker copilot应用,在登录的时候输入我们设置的secretKey。
在【容器】页面,系统会通过注册表对当前已生成的容器版本进行检测,这个检测并不是实时的,而是在系统内置的一定时间内触发一次,所以我们刚部署完成如果没有发现有容器更新也很正常,不需要在意。
我们可以通过勾选的方式对容器进行批量更新,也可以点击单个容器,在弹出的容器管理框内进行单独的控制。
在我们对容器进行更新以后,可以通过左侧的【进度】标签页,查看所有容器更新的进度,在进度条中会展示拉取新镜像、删除容器、启动容器等阶段。需要注意的是,这里只会暂时本次运行后的日志,如果容器重启,则日志不再保留。
点击【镜像】标签页,可以看到容器都被正确更新了,旧容器系统不会自动删除,而是会保留none标签。
对应极空间的本地镜像,则是这些sha256编码的容器,我们可以在一一对应以后删除不需要的旧镜像。
除了对容器、镜像进行管理外,docker copilot还支持容器备份、恢复。
通过极空间打开我们映射好的容器路径,可以看到备份的文件是docker的json文件,里面保存了容器的名称、配置、环境变量、网络等等所有信息。
总结
docker copilot作为极空间目前唯一可用的容器镜像监控和管理应用,为广大极空间用户提供了超便利的升级体验。
如果你更习惯使用笔者在文章开头提到的几款容器来管理镜像的话,相信这个需求也很快就能实现。