code学习

docker 镜像操作必用的几个命令

拉取镜像

命令

docker pull 镜像名称:Tag      

样例

docker pull ubuntu
docker run ubuntu /bin/echo "Hello world,My name is 乐哥聊编程"      

查看镜像信息

列出所有镜像

命令

docker images      

字段解释

  • REPOSITORY:来自于哪个仓库
  • TAG:镜像的标签信息,类似于Maven的打tag
  • IMAGE ID:代表镜像的唯一标识,如果两个镜像id相同,则有可能他们指向同一个镜像,只是标签不同
  • CREATED:镜像最后的更新时间
  • SIZE:镜像大小

子命令

# 列出所有镜像,包括临时文件 
docker images -a
# 列出镜像摘要
docker images --digests=true
# 查看更多子命令
man docker-images      

打标签

命令

docker tag 镜像名称:tag 自定义的标签      

样例

docker tag ubuntu:latest myubuntu:1.0.0      

查看详细信息

docker inspect ubuntu:latest      

搜索镜像

docker search ubuntu      

搜索官方镜像

docker search --filter=is-official=true ubuntu      

搜索start>4的镜像

docker search --filter=stars=4 ubuntu      

清除/删除 镜像

按标签删除

docker rmi ubuntu:latest      

按镜像ID删除

docker images
docker rmi ba6acccedd29      

清理镜像

docker image prune      

创建镜像

基于已有容器创建

docker commit -m '提交日志' -a '作者信息' 容器ID 自定义的镜像名称      

样例

# 进入容器
docker run -it ubuntu:latest /bin/bash
# 创建新文件 并追加内容
echo 'test commit' > lglbc.txt
exit
# 下载
# 创建镜像
docker commit -m '第一次提交' -a '乐哥聊编程' 6918e5c0e454 lglbc:1.0.0      

基于本地模版导入

docker [image] i mport [OPTIONS] filelURLl -[REPOSITORY
[:TAG] ]      

样例

# 下载ubuntu模版
wget https://download.openvz.org/template/precreated/contrib/ubuntu-6.06-i386-minimal.tar.gz
# 导入镜像
cat ubuntu-6.06-i386-minimal.tar.gz | docker import - ubuntu:6.06      

基于docker file创建

FROM ubuntu:latest
LABEL version='1.0.0' maintainer= 'docker user lglbc@https://gitee.com/lglbc'
RUN echo 'test docker file' > docker.txt      
docker build . -t lglbc:dockerfile
docker exec -it lglbc:dockerfile /bin/bash
cat docker.txt      

导入/导出镜像

导出

docker save -o ubuntu.latest.tar ubuntu:latest      

导入

docker load -i[<] ubuntu.latest.tar      

继续阅读