Docker镜像概述
每一个image都有一个对应的dockerfile文件,这个文件就是生成image官方的一个标准,原来这个是根据dockerfile配置去生成的一个image,
通过dockerfile意味着我可以创建一个docker image出来.
如果我们掌握了dockerfile语法的话就可以把MySQL nginx等等东西定义我们自己的 image.
(一)搜索镜像命令
语法
查看帮助
docker search --help
docker search [OPTIONS] TERM
Options说明
实例
查找镜像包含java,并收藏数大于100
[root@docker docker]# docker search -s 10 java
Flag --stars has been deprecated, use --filter=stars=3 instead
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/node Node.js is a JavaScript-based platform for... 8118 [OK]
docker.io docker.io/tomcat Apache Tomcat is an open source implementa... 2562 [OK]
docker.io docker.io/openjdk OpenJDK is an open-source implementation o... 1994 [OK]
docker.io docker.io/java Java is a concurrent, class-based, and obj... 1976 [OK]
docker.io docker.io/ghost Ghost is a free and open source blogging p... 1062 [OK]
docker.io docker.io/jetty Jetty provides a Web server and javax.serv... 319 [OK]
参数说明
INDEX:索引
NAME:镜像仓库源的名称
DESCRIPTION:镜像的描述
STARS:点赞个数
OFFICIAL:是否docker官方发布
AUTOMATED:自动构建
(二)拉取镜像docker pull
docker pull xxxx 下载什么就给什么拉下来,前置条件需要先执行搜索 docker search
如果拉取的话, 默认是拉取最新版本的镜像
(三)查看所有的镜像 docker images
docker images
repository 是名字. tag显示latest是最新版本的意思, image id 是镜像id created是什么时候去更新的 size 是大小的意思.
(四)运行镜像docker run
可以通过image id 也可以通过名字启动
docker run
-d 是希望后台运行的意思 --name 是指定 名字的 -p 9090:8080是指定端口的意思,意思是通过宿主机9090去访问docker内部8080端口
这样就可以通过 ip加9090端口去访问 docker里面端口为8080的容器.
-v
挂载docker容器文件和Linux宿主机绑定关系
(五)删除镜像
docker rmi 镜像id
(六) 给镜像添加标签
使用docker tag 镜像ID name:tag
(七) 查看镜像具体信息
使用docker inspect 镜像ID或者docker inspect name:tag
(八) 查看历史信息
使用docker history 镜像ID或者docker history name:tag
(九)存出和载入(目的是备份和迁移)
存出:docker save > test_nginx.tar ngiux:17
载入(docker load < test_nginx.tar)