Ubuntu 18.04.4 导入docker镜像,启动镜像,保存容器为镜像,导出镜像
1. 查看 docker 版本
sudo docker version
2. 查看本地库中的镜像
sudo docker images
3. 查看 正在运行的 容器
sudo docker ps -a
4. 导入 镜像的 tar 文件 到本地库
sudo docker load -i 14.14.14.100_5000_pytorch_pytorch_1.1.0-cuda10-py36.tar
5. 再次查看库中镜像和运行的容器,发现库中已有镜像
6. 为库中镜像改名
docker tag {imageID} {repository}:{tag}
库中镜像:
镜像改名:
改名后,相同 ID 的镜像会有两个, 这时不能 用镜像ID 来删除镜像,因为这时该镜像有两个引用(有了两个名)。为防止一个镜像多个名,我们可以设置相同的名但是不同的tag标签, 也或者直接删掉多余的命名和标签,如下:
7. 根据库中的镜像运行容器:
sudo docker run -it 14.14.14.100:5000/pytorch/pytorch:1.1.0-cuda10-py36 /bin/bash
其中,
14.14.14.100:5000/pytorch/pytorch:1.1.0-cuda10-py36 为 容器名+容器tag
参数 -t 让Docker分配一个伪终端并绑定在容器的标准输入上,-i 让容器的标准输入保持打开。
使用docker run命令来启动容器,docker在后台运行的标准操作包括
1.检查本地是否存在指定的镜像,不存在则从公有仓库下载
2.使用镜像创建并启动容器
3.分配一个文件系统,并在只读的镜像层外面挂载一层可读可写层
4.从宿主主机配置的网桥接口中桥接一个虚拟接口道容器中去
5.从地址池分配一个ip地址给容器
6.执行用户指定的应用程序
7.执行完毕之后容器被终止
说明来自: https://www.cnblogs.com/linjiqin/p/8608975.html
8. 在运行的容器中安装软件后, 将该容器保存为新的镜像
查看需要保存为镜像的容器信息
根据容器ID 来保存容器为镜像。
具体命令:
docker commit 2ec7cf215b52 new_pytorch:v1
2ec7cf215b52 为容器的ID
new_pytorch 为保存成镜像的名
v1 为保存成镜像的标签
9. 把库中的镜像保存到硬盘
查看库中的镜像
docker images
报库中的镜像导出到硬盘上:
docker save -o /tmp/new_pytoch:v1.tar new_pytorch:v1
成功导出:
-----------------------------------------------------------------
附注(常用命令):
连接到某个正在运行的容器
docker attach $CONTAINER_ID
启动某个已经停掉的容器 ( start 命令只能启动一个已经停掉的容器 )
docker start $CONTAINER_ID
启动某个容器 ( restart 命令可以重启正在运行的容器,也可以启动已经停掉的容器 )
docker restart $CONTAINER_ID
*** 不论是 start命令还是restart 命令 启动的容器如果有交互终端则只能通过 docker attach $CONTAINER_ID 进入 。
删除docker中的镜像
docker rmi 镜像id
删除docker中的容器
docker rm 容器id
查看当前正在运行的容器
docker ps
查看所有容器:(包括 正在运行的, 也包括退出的容器)
docker ps -a
注意, 在删除某个镜像之前要保证没有使用该镜像的容器(包括正在运行的容器,也包括退出的容器)。
因此,我们需要先删除使用该镜像的已退出的容器, 而对于正在运行的容器我们需要先停掉该容器,再删除容器。当没有使用该镜像的容器存在的情况下,我们才能删除该镜像。
对于多镜像 ID 相同的情况下,我们需要使用 镜像名+镜像标签(tag) 来删除镜像。
参考资料:
https://blog.csdn.net/qq_26709459/article/details/80785761
https://www.cnblogs.com/linjiqin/p/8608975.html
https://blog.csdn.net/x8h8kenan/article/details/80229279
posted on 2020-09-17 17:02 Angry_Panda 阅读(4319) 评论(3) 编辑 收藏 举报
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章