Docker 拉取镜像以及搜索镜像
拉取镜像
docker pull : 从镜像仓库中拉取或者更新指定镜像
语法
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
OPTIONS说明:
-
**-a 😗*拉取所有 tagged 镜像
-
**–disable-content-trust 😗*忽略镜像的校验,默认开启
实例
从Docker Hub下载ubuntu最新版镜像。
docker pull ubuntu
[h@h-81r7 ~]$ docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
35807b77a593: Pull complete
Digest: sha256:9d6a8699fb5c9c39cf08a0871bd6219f0400981c570894cd8cbea30d3424a31f
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest
拉取指定版本镜像 例如:ubuntu18.04
[h@h-81r7 ~]$ docker pull ubuntu:18.04
18.04: Pulling from library/ubuntu
e4ca327ec0e7: Pull complete
Digest: sha256:9bc830af2bef73276515a29aa896eedfa7bdf4bdbc5c1063b4c457a4bbb8cd79
Status: Downloaded newer image for ubuntu:18.04
docker.io/library/ubuntu:18.04
使用
[h@h-81r7 ~]$ docker images #列出本地主机上的镜像信息(查看本地镜像)
[h@h-81r7 ~]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest fb52e22af1b0 3 weeks ago 72.8MB
ubuntu 18.04 54919e10a95d 3 weeks ago 63.1MB
hello-world latest d1165f221234 6 months ago 13.3kB
搜索镜像
docker search : 从Docker Hub查找镜像
语法
docker search [OPTIONS] TERM
OPTIONS说明:
- **–automated 😗*只列出 automated build类型的镜像;
- **–no-trunc 😗*显示完整的镜像描述;
- **-f <过滤条件>:**列出收藏数不小于指定值的镜像。
实例
从 Docker Hub 查找所有镜像名包含 java,并且收藏数大于 10 的镜像
runoob@runoob:~$ docker search -f stars=10 java
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
java Java is a concurrent, class-based... 1037 [OK]
anapsix/alpine-java Oracle Java 8 (and 7) with GLIBC ... 115 [OK]
develar/java 46 [OK]
isuper/java-oracle This repository contains all java... 38 [OK]
lwieske/java-8 Oracle Java 8 Container - Full + ... 27 [OK]
nimmis/java-centos This is docker images of CentOS 7... 13 [OK]
参数说明:
NAME: 镜像仓库源的名称
DESCRIPTION: 镜像的描述
OFFICIAL: 是否 docker 官方发布
stars: 类似 Github 里面的 star,表示点赞、喜欢的意思。
AUTOMATED: 自动构建。
Docker 创建镜像
**docker commit 😗*从容器创建一个新的镜像。
语法
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTIONS说明:
-
**-a 😗*提交的镜像作者;
-
**-c 😗*使用Dockerfile指令来创建镜像;
-
**-m 😗*提交时的说明文字;
-
**-p 😗*在commit时,将容器暂停。
实例
使用docker commit 在基于ubuntu18.04镜像中创建新的ubuntu镜像
[h@h-81r7 ~]$ docker run -it ubuntu:18.04 /bin/bash
root@dac5cd857bc0:/# touch test
root@dac5cd857bc0:/# exit
[h@h-81r7 ~]$ docker commit -m "Added a new file" -a "HAOYICHENG" dac5cd857bc0 test:0.1
sha256:d84a8c4adb0b9813a381662b7344445be37727c449d76fe011b739561e5f79b4
此时查看本地镜像列表,会发现新创建的镜像已经存在
[h@h-81r7 ~]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
test 0.1 d84a8c4adb0b About a minute ago 63.1MB
ubuntu latest fb52e22af1b0 3 weeks ago 72.8MB
ubuntu 18.04 54919e10a95d 3 weeks ago 63.1MB
hello-world latest d1165f221234 6 months ago 13.3kB