您的位置:首页 > 运维架构 > Docker

Docker镜像相关命令(学习笔记)

2017-08-18 00:00 711 查看

Docker镜像相关命令

镜像查看

#sudo docker images  //在本机进行镜像查看
#sudo docker inspect 镜像ID   //查看单个镜像的具体信息,以JSON格式返回


获取镜像

# sudo docker pull centos    //从DockerHub获取镜像


查询镜像

#sudo docker search 镜像名称  //从DockerHub按照镜像名称模拟查询镜像


制作镜像

通过Dockerfile构建镜像

#sudo cd /              //来到根“/”下

#sudo mkdir redis       //创建redis文件夹

#touch Dockerfile       //创建Dockerfile文件,文件内容见如下灰色部分

FROM ubuntu:14.04

RUN apt-get update && apt-getinstall -y redis-server

EXPOSE 6379

ENTRYPOINT ["/usr/bin/redis-server"]

#sudo docker build -t ningyougang/redis .     //通过dockerbuild制作镜像

参数解释

-t:tag名称

当前Dockerfile的路径,在此处表示当前文件夹下

对运行着的容器commit镜像

# sudo docker commit -m "Added json gem" -a"Kate Smith" 0b2616b0e5a8 ouruser/sinatra:v2

参数解释

-m:提交注释,如此处你加了什么特别的功能

-a:作者

0b2616b0e5a8:运行着的容器ID

ouruser/sinatra:v2:给当前提交的镜像起名字并打标签

备注:从上面可以看出,我们可以通过dockercommit来创建镜像,但是这种方式有点凌乱而且很难复制,更好的方式是通过Dockerfile来构建镜像,因为它步骤清晰并且容易复制

给镜像打标签

#sudo docker tag 5db5f8471261 ouruser/sinatra:devel  //当commit or build后,对镜像打标签

参数解释

5db5f8471261:此处的id为镜像ID

推送镜像到公共库DockerHub

#sudo docker push ouruser/sinatra


推送镜像到私有库

下载私有仓库镜像

# docker pull registry

从DockerHub下载registry镜像,里面含私库的运行环境,当然你也可以自己下载源码包,自己安装

推送之前打tag

# docker tag 704ca5ad68c5 192.168.202.213:5000/newtouch/activemq

#打标签(必须先打标签,#在推送)

该命令格式为:docker tag $ID $IP:$port/$name。push到私库上必须先打个tag,而tag名称的格式为:$IP:$port/$name, 个人感觉此处设计不太好或我自己没有找到更好的办法。如果设计良好应该可以直接push,不用打标签.

Push tag到镜像

#docke
3ff0
r push 192.168.202.213:5000/newtouch/activemq

#将此tag推送到私有库

Push到仓库后,远程查看

#curl http://192.168.202.213:5000/v1/search             #push之后,远程查看

在另外一个docker客户端,从私有仓库下载

#docker pull 192.168.202.213:5000/newtouch/activemq


删除镜像

#sudo docker rmi 镜像ID


列出镜像的变更历史

# docker history


另外,近期还发现了一个不错的Docker中文手册:

http://www.docker.org.cn/book/docker/prepare-docker-5.html

CentOS Docker 安装

http://www.runoob.com/docker/centos-docker-install.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: