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
Ubuntu 18.04.4 导入docker镜像,启动镜像,保存容器为镜像,导出镜像的更多相关文章
- ubuntu 18.04 上安装 docker
命令安装 docker 1.直接从 ubuntu 仓库安装,打开终端,输入: 2.启动 docker 服务 . 设置开机自启动 docker 服务 3.免 sudo 配置:
- Ubuntu 18.04 安装博通(Broadcom)无线网卡驱动
目录 Ubuntu 18.04 安装博通(Broadcom)无线网卡驱动 Package gcc is not configured yet. 解决办法 history history | grep ...
- [笔记] Ubuntu 18.04安装Docker CE及NVIDIA Container Toolkit流程
之前写的[笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程已经out了,以这篇为准. Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心 ...
- Ubuntu 18.04下Couldn't connect to Docker daemon at http+docker://localunixsocket解决办法
一台服务器系统为:Ubuntu 18.04 LTS,上面建了git裸仓库,用于开发吧代码push到这里.同时WEB测试环境通过docker也部署在这台.通过git钩子post-receive,当有新代 ...
- Ubuntu 18.04 启动root账号并授权远程登录
Ubuntu 18.04 刚刚上市2个月,下载安装,尝尝鲜~ 安装界面看上去舒服许多, 安装的速度也较之前17.04 和16.04 都快了许多.抱歉,未截图. Ubuntu 安装完成后默认不启动roo ...
- [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程
Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心弄崩Host的环境. 而nvidia-docker2的好处是NVidia帮你配好了Host和Container之间的CUDA相 ...
- ubuntu 18.04 - server版 开机启动脚本
ubuntu 18.04 不再使用 inited 管理系统,改用 systemd systemd 默认读取 /etc/systemd/system 下的文件,该目录下的文件会链接/lib/system ...
- How To Install Docker On Ubuntu 18.04
Docker is an increasingly popular software package that creates a container for application developm ...
- Ubuntu 18.04 LTS 常用软件安装杂记
之前个人笔记本装的是 Linux Mint,用了一段时间但是体验不佳,所以打算换成 Ubuntu .作为一个 Linux 小白,当时配置一些软件环境费了不少时间.这次打算简单记录下,和大家分享一下我的 ...
- ubuntu 18.04 搭建flask服务器(大合集,个人实操)
ubuntu 18.04 搭建flask服务器(大合集) Ubuntu python flask 服务器 本次使用的Ubuntu版本为:Ubuntu 18.04.5 LTS (GNU/Linux 4. ...
随机推荐
- python 二次封装logging,打印日志文件名正确,且正确写入/结合pytest执行,日志不输出的问题
基于之前日志问题,二次封装日志后,导致日志输出的文件名不对,取到的文件一直都是当前二次封装的log的文件名,基于这个问题,做了优化,详细看 https://www.cnblogs.com/cuitan ...
- Win11在VMWare中无tpm条件下安装
Win11在VMWare中无tpm条件下安装 在条件不满足提示的窗口下. 按shift+F10打开cmd, 输入regedit打开注册表, 按如下路径新建三个值后即可 [HKEY_LOCAL_MACH ...
- nginx 反向代理(proxy)与负载均衡(upstream)应用实践
集群介绍 集群就是指一组(若干个)相互独立的计算机,利用高速通信网络组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运行各自服务的独立服务器.这些服务器之间可以彼此通信,协同向 ...
- Ubuntu 18.04安装xdrp以使用远程桌面
背景 开发环境有一台服务器默认没有屏幕(被我拿走用来拓展屏幕了),有时候需要使用到界面但嫌弃拆显示器太麻烦,因此使用远程桌面来解决这个需求. 做法 安装xrdp sudo apt install -y ...
- 3568F-Linux-RT系统测试手册
- Python 引用不确定的函数
在Python中,引用不确定的函数通常意味着我们可能在运行时才知道要调用哪个函数,或者我们可能想根据某些条件动态地选择不同的函数来执行.这种灵活性在处理多种不同逻辑或根据不同输入参数执行不同操作的场景 ...
- .Net Core 2.2 Areas 路由,第一个MapAreaRoute 设置匹配多个Controller
.h2 { background-color: rgba(78, 110, 242, 1); color: rgba(255, 255, 255, 1); padding: 10px } 在.Net ...
- “古剑山”初赛Misc 幸运饼干
"古剑山"初赛Misc 幸运饼干 考点:Chrome的Cookies解密 赛中思路 bandzip极限压缩hint.jpg后打明文攻击 压缩包密码:sv@1v3z ┌──(root ...
- CentOS 8安装docker
1.查看Linux内核(Docker最低支持CentOS 7 64位 内核3.10) uname -a 2.安装docker(输入yes,然后等待-) yum install docker 3.启动d ...
- TP5系列 | Queue消息队列
消费信息如下ThinkPHP5 Queue消息队列 优点 1.Queue内置了 Redis,Database,Topthink ,Sync这四种驱动,本文使用Redis驱动 2.Queue消息队列适用 ...