通过运行一个tomcat容器来记录下初学docker常用的几个命令---镜像篇

1.启动docker服务

[root@localhost ~]# service docker start
可以看到截图中启动命令重定向到了systemctl start docker.service,所以直接使用systemctl start docker.service也可以启动服务
  

2.查看当前宿主机的镜像列表(有哪些镜像可用)

[root@localhost ~]# docker images
    
REPOSITORY:表示该镜像来自哪个仓库。镜像保存在仓库,而仓库存在于Registry中,官方的Registry即Docker Hub;每个镜像仓库可以存放多个镜像,如ubuntu仓库包含了ubuntu14.04,13.04。
Docker Hub中有2种类型的仓库,用户仓库和顶层仓库,用户仓库的镜像都是由docker用户创建的,而顶层仓库则有官方管理。
用户仓库由用户名+仓库名组成,如jamtur01/tomcat;
顶层仓库只包含仓库名。
TAG:镜像的标签信息,为了区分同一个仓库中的不同镜像
IMAGE ID:镜像ID,唯一标识镜像
CREATED:创建时间,即镜像的最后更新时间
SIZE:镜像大小

3.搜索镜像(默认在官方仓库中搜索) 

[root@localhost ~]# docker search hello-world

 4.拉取镜像

[root@localhost ~]# docker pull hello-world
如果没有指定镜像的标签信息,则会默认下载latest标签

 5.删除镜像

通过镜像ID删除
[root@localhost ~]#docker rmi ccc7a11d65b1 镜像ID
通过镜像标签
[root@localhost ~]#docker rmi helloworld:12 (如果不加标签,则默认删除标签为latest的镜像,如果没有该标签的镜像,就会报错)
  
注意:当有该镜像创建的容器存在时(只要存在容器,不管是否在运行),镜像文件默认是无法被删除的

 6.使用tag命令添加标签

[root@localhost ~]# docker tag docker.io/hello-world helloworld:1.1.0
  添加的标签实际起到了类似链接的作用,可以看到2个镜像的镜像ID是相同的,,实际指向同一个镜像文件,只是别名不同。
  当同一个镜像拥有多个标签时,docker rmi命令只是删除该镜像多个标签中指定的标签,不会影响镜像文件,如果只剩1个镜像标签了,就会彻底删除该镜像。
  强行删除,可使用-f参数(不推荐)  docker rmi -f ccc7a11d65b1

 7. inspect命令查看镜像详细信息

[root@localhost ~]# docker inspect docker.io/ubuntu   
{
"Id": "sha256:ccc7a11d65b1b5874b65adb4b2387034582d08d65ac1817ebc5fb9be1baa5f88", 。。。。。。
}

使用-f 参数获取其中一项信息
[root@localhost ~]# docker inspect -f {{".Os"}} docker.io/ubuntu
linux
[root@localhost ~]#

 8.使用docker build命令创建镜像

如果当前目录时Dockerfile所在目录
[root@localhost helloword]# docker build -t jamtur01/tomcat .
-t 表示为新镜像设置仓库和名称,本例中,仓库名为jamtur01,镜像名tomcat
. 表示使用当前目录中的Dockfile文件

如果当前目录不是Dockerfile文件所在目录,则需要指定Dockerfile文件所在目录,例如Dockerfile在/HMK/helloword/
[root@localhost HMK]# docker build -t hmk/tomcat:v1.0 /HMK/helloword/

也可以为镜像设置一个标签,如上面的 “hmk/tomcat:v1.0如果没有设置任何标签,docker将会自动为镜像设置一个latest标签

 

 

posted @ 2018-03-11 16:52  我是冰霜  阅读(1123)  评论(0编辑  收藏  举报