Docker 入门到实践(四)Docker 使用镜像
一、获取镜像
Docker Hub 上有大量的高质量的镜像让我们获取,命令为:
- docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]
具体的选项可以通过 docker pull --help 来查看。
[Docker Registry 地址[:端口号]/] :这个指的就是 域名/IP[:端口号],默认就是 Docker Hub 的地址。
仓库名[:标签]:仓库名是一个两段式名称,是 <用户名>/<软件名>,用户名默认是 library,也就是官方镜像。
例如:
- $ docker pull ubuntu:18.04
- 18.04: Pulling from library/ubuntu
- bf5d46315322: Pull complete
- 9f13e0ac480c: Pull complete
- e8988b5b3097: Pull complete
- 40af181810e7: Pull complete
- e6f7c7e5c03e: Pull complete
- Digest: sha256:147913621d9cdea08853f6ba9116c2e27a3ceffecf3b492983ae97c3d643fbbe
- Status: Downloaded newer image for ubuntu:18.04
如上图所示,没有给出镜像地址,docker 便会去 Docker Hub 上获取,而仓库名是 library/ubuntu,标签是 18.04,默认就是 library,官方镜像。
二、运行镜像
- docker run -i -t --rm --name my_ubuntu ubuntu:18.04 bash
root@e7009c6ce357:/# cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.1 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.1 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
我们来解释一下各个参数的意义。
- -i : 交互式操作。
- -t : 开启一个终端。
- --rm : 指的是容器运行退出之后自动删除容器,这里我们只是运行试试看,不需要保留所创造的容器。
- --name : 是给你所创造的容器起的名字。
- ubuntu:18.04 :这是镜像的名字
- bash : 跟在镜像后面的是命令,我们希望有个交互式的 shell,因此用的是 bash。
cat /etc/os-release 查看系统版本命令,结果中我们看到系统是 ubuntu:18.04 LTS,然后输入 exit 退出容器。
三、列出镜像
- $ docker image ls
- REPOSITORY TAG IMAGE ID CREATED SIZE
- centos latest 0584b3d2cf6d 3 weeks ago 196.5 MB
- redis alpine 501ad78535f0 3 weeks ago 21.03 MB
- docker latest cf693ec9b5c7 3 weeks ago 105.1 MB
- nginx latest e43d811ce2f4 5 weeks ago 181.5 MB
列表里包括了 仓库名,标签,镜像 ID,创建时间,镜像大小。
由于 Docker 使用 Union FS,相同的镜像层秩序保存一个,所以镜像大小不代表实际占有硬盘大小。
可以通过使用一下命令查看镜像,容器,数据卷占用硬盘情况:
- $ docker system df
- TYPE TOTAL ACTIVE SIZE RECLAIMABLE
- Images 24 0 1.992GB 1.992GB (100%)
- Containers 1 0 62.82MB 62.82MB (100%)
- Local Volumes 9 0 652.2MB 652.2MB (100%)
- Build Cache 0B 0B
四、删除镜像
如果要删除本地镜像,那么使用下面的格式:
- $ docker image rm [选项] <镜像1> [<镜像2> ...]
上面的镜像一般是指 镜像ID,或者镜像名来删除
镜像 ID 分为长 ID 和短 ID,通常我们 docker images 显示的就是短 ID 了,但是删除镜像时,使用短 ID 的前三个字符一般就可以区分镜像了。例如删除上面的 redis 镜像:
- $ docker image rm
- Untagged: redis:alpine
- Untagged: redis@sha256:f1ed3708f538b537eb9c2a7dd50dc90a706f7debd7e1196c9264edeea521a86d
- Deleted: sha256:501ad78535f015d88872e13fa87a828425117e3d28075d0c117932b05bf189b7
- Deleted: sha256:96167737e29ca8e9d74982ef2a0dda76ed7b430da55e321c071f0dbff8c2899b
- Deleted: sha256:32770d1dcf835f192cafd6b9263b7b597a1778a403a109e2cc2ee866f74adf23
- Deleted: sha256:127227698ad74a5846ff5153475e03439d96d4b1c7f2a449c7a826ef74a2d2fa
- Deleted: sha256:1333ecc582459bac54e1437335c0816bc17634e131ea0cc48daa27d32c75eab3
- Deleted: sha256:4fc455b921edf9c4aea207c51ab39b10b06540c8b4825ba57b3feed1668fa7c7
还可以使用镜像名字删除,这里的镜像名字指的是 仓库名:标签,例如删除上面的 centos 镜像:
- $ docker image rm centos
- Untagged: centos:latest
- Untagged: centos@sha256:b2f9d1c0ff5f87a4743104d099a3d561002ac500db1b9bfa02a783a46e0d366c
- Deleted: sha256:0584b3d2cf6d235ee310cf14b54667d889887b838d3f3d3033acd70fc3c48b8a
- Deleted: sha256:97ca462ad9eeae25941546209454496e1d66749d53dfa2ee32bf1faabd239d38
Docker 入门到实践(四)Docker 使用镜像的更多相关文章
- Docker入门与实践之 docker安装与了解
一.Docker 概述 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后 ...
- Docker入门教程(四)Docker Registry
Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它 ...
- Docker入门之 - 如何安装Docker CE
原文:Docker入门之 - 如何安装Docker CE 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u012055638/article/det ...
- Docker入门与实践
一.Docker介绍 docker官网:https://www.docker.com/ Docker hub地址: https://hub.docker.com/ 1.基本概念 Docker ...
- 《Docker 入门与实践》 已经出版了~欢迎有须要的朋友关注。
在云计算时代.开发人员将应用转移到云上已经攻克了硬件管理的问题,然而软件配置和管理相关的问题依旧存在. Docker的出现正好能帮助软件开发人员开阔思路.尝试新的软件管理方法来解决问题. 通过掌握Do ...
- Docker入门到实践
1.什么是Docke 1.网上有很多 2.为什么要使用Docker? 优点 更高效的利用系统资源 更快速的启动时间 一致的运行环境 持续交付和部署 更轻松的迁移 更轻松的维护和扩展 3.Docker的 ...
- Docker 入门到实践(三)Docker 安装
注意:不要在没有配置 Docker APT 源的情况下直接使用 apt 命令安装 Docker. 一.准备工作 系统要求 Docker CE 支持一下版本的 Ubuntu 操作系统 Cosmic 18 ...
- Docker入门到实践——简单操作
1.对比传统虚拟机总结 特性 容器 虚拟机 启动 秒级 分钟级 硬盘使用 一般为MB 一般为GB 性能 接近原生 弱于 系统支持量 单机支持上千个容器 一般几十个 2.基本概念 Docker包括三个基 ...
- Docker入门 .Net Core 使用Docker全程记录
https://www.cnblogs.com/flame7/p/9210986.html Docker入门 第一课 --.Net Core 使用Docker全程记录 微服务架构无疑是当前最火热的 ...
随机推荐
- JavaSSM框架整合
SSM整合 ssm框架 框架整合 在博客的前面介绍了mybatis,spring,springmvc的使用,那么这篇博客将介绍将mybatis和spring,springmvc的整合. 整合之前,我 ...
- μC/OS-II 任务的同步与通信 --- 消息邮箱
简介 如果把数据缓冲区的指针赋给一个事件控制块的成员 OSEventPrt,同时使事件控制块的成员 OSEventType 为常数 OS_EVENT_TYPE_MBOX,则该事件控制块就叫做消息邮箱, ...
- μC/OS-II 任务堆栈的初始化
任务堆栈的作用 应用程序在创建一个新任务的时候,必须把在系统启动这个任务时 CPU 各寄存器所需要的初始数据(任务指针.任务堆栈指针.程序状态字等等),事先存放在任务的堆栈中,以备任务切换等操作时调用 ...
- hadoop小结
测试小结:1.如果只需要对数据集进行过滤,筛选则只需要编写Mapper类,不需要Reduce类,此时要执行下面一条语句:job.setNumReduceTesk(0);2.如果需要对处理的数据进行分组 ...
- 用python实现红包机制
方法一,逻辑是后一个红包的范围是[0.01,剩下的钱*2/剩下的红包数,如果最后钱不足分配给每个人,就把后几个每人分配0.01元. 主要思想就是,每个人至少能领取到0.01元. import rand ...
- mysql+mycat实现读写分离
centos7 master slave mycat1.6 client 192.168.41.10 192.168.41.11 192.168.41.12 192.168.41.13 实 ...
- JQuery官方学习资料(译):操作元素
获取和设置元素的信息 有很多种方式可以改变现有的元素,最常见的是改变HTML内容或者元素的属性.JQuery提供了简单的夸浏览器的方法来帮助你实现元素信息的获取和设置. .html():获 ...
- EF 传递的主键值的数量必须与实体上定义的主键值的数量匹配 原因
主要是该数据表没有定义主键造成的
- SpringMVC表单验证与Velocity整合
阅读本文约“1.2分钟” 定义表单类 以Login为例,有username和password两个字段 import javax.validation.constraints.NotNull; impo ...
- MySQL事务(学习笔记)
MySQL事务主要用于处理操作量大,复杂度高的数据.比如说,在人员管理系统中,你删除一个人员,你即需要人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事 ...