删除容器挂载卷打包容器镜像并传到阿里云

简单记录下打包上传的全过程,补充docker知识,利用阿里云进行docker镜像共享开发。

阿里云登录

复制代码
sudo docker login --username=youxiang@youxiang.com registry.cn-hangzhou.aliyuncs.com

这个登录密码可以在容器镜像服务/实例列表/镜像仓库页面左侧tab下的"访问凭证"修改。注意:不是淘宝/支付宝/阿里云登录账号的密码。

开始使用

我们一般开发时在GPU使用docker镜像命令为

复制代码
sudo docker run -d --privileged=true --runtime=nvidia --gpus all --net=host  -v /dev:/dev -v /path_code:/path_code --name your-container idxxxxxxxx

然后执行

复制代码
sudo docker restart your-container 
sudo docker exec -it your-container  bash

删除挂载卷

进入镜像

这个时候执行
sudo docker ps -a |grep your-container

则左上角显示的就是容器id。

宿主机mv备份挂载的文件夹,例如mv /path_code /path_code_bk

在宿主机执行
sudo docker inspect 容器id > test.txt

然后打开test.txt,看到类似于

复制代码
"Type": "volume",
"Name": "5dee391ef8a4b48822b27ebfde9567ec522c298093203dc6ce18f21a8decbd6b",
"Source": "/var/lib/docker/volumes/5dee391ef8a4b48822b27ebfde9567ec522c298093203dc6ce18f21a8decbd6b/_data",
"Destination": "--net=host",
"Driver": "local",
"Mode": "",
"RW": true,
"Propagation": ""
},

然后执行
sudo rm -rf /var/lib/docker/volumes/5dee391ef8a*即可。

回到镜像就会发现挂载目录已经无文件,但宿主机文件依旧存在。

容器上传阿里云

复制代码
sudo docker commit -a "kyrie" -m "torch" 容器id torch:v1
sudo docker tag torch:v1 registry.cn-hangzhou.aliyuncs.com/your_repo/your_image:v1
sudo docker push registry.cn-hangzhou.aliyuncs.com/your_repo/your_image:v1

等待上传完毕即可,

使用
sudo docker pull registry.cn-hangzhou.aliyuncs.com/your_repo/your_image:v1

就可以在公网拉下来镜像。

相关推荐
bugcome_com1 天前
阿里云 OSS C# SDK 使用实践与参数详解
阿里云·c#
孤岛悬城1 天前
37 日志分析:ELK(Elasticsearch+Logstash+Kibana)
云计算
主机哥哥1 天前
阿里云OpenClaw部署全攻略,五种方案助你快速部署!
服务器·阿里云·负载均衡
珠海西格电力科技1 天前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
Sheffield2 天前
command和shell模块到底区别在哪?
linux·云计算·ansible
Hello.Reader2 天前
Flink 对接阿里云 OSS(Object Storage Service)读写、Checkpoint、插件安装与配置模板
大数据·阿里云·flink
DolitD2 天前
云流技术深度剖析:国内云渲染主流技术与开源和海外厂商技术实测对比
功能测试·云原生·开源·云计算·实时云渲染
翼龙云_cloud2 天前
阿里云渠道商:阿里云 ECS 从安全组到云防火墙的实战防护指南
安全·阿里云·云计算
YongCheng_Liang2 天前
从零开始学虚拟化:桌面虚拟化(VDI)入门指南(架构 + 产品 + 部署)
运维·云计算
万物得其道者成2 天前
阿里云 H5 一键登录接入实战:前后端完整实现
阿里云·云计算·状态模式