Docker 之 Image镜像操作大全

原创 浪子丶刘少  2019-08-23 08:30  阅读 577 次 评论 0 条 百度已收录

一、获取镜像docker pull

docker pull centos:7.5.1804
即
docker pull registry.hub.docker.com/centos:7.5.1804
即从注册服务器registry.hub.docker.com 中的 centos 仓库来下载标记为 7.5.1804 的镜像。

Docker 之 Image镜像操作大全 私有云学堂 第1张

二、列出本地镜像docker images

docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              7.5.1804            cf49811e3cdb        5 months ago        200MB
在列出信息中,可以看到几个字段信息
  • 来自于哪个仓库,比如 centos
  • 镜像的标记,比如 7.5.1804
  • 它的 ID 号(唯一)
  • 创建时间
  • 镜像大小
其中镜像的 ID 唯一标识了镜像,相同的镜像 ID,说明它们实际上是同一镜像。
TAG 信息用来标记来自同一个仓库的不同镜像。例如 centos 仓库中有多个镜像,通过 TAG 信息来区分发行版本。
使用指定版本启动镜像

docker run -t -i centos:7.5.1804 /bin/bash

三、创建镜像

1、修改已有镜像docker commit提交

1)先使用下载的镜像启动容器

docker run -t -i centos:7.5.1804 /bin/bash

2)添加所需应用,如vim

yum install vim -y
exit #退出

3)使用 docker commit 命令来提交更新后的副本

docker commit -m "Added vim" -a "Docker liushao" 1823e79e5cc7 centos:7.5.1804.v2
其中:
-m     指定提交的说明信息
-a     可以指定更新的用户信息
1823e79e5cc7     容器ID
centos     目标镜像的仓库名
7.5.1804.v2     tag 信息

2、利用 Dockerfile 来创建镜像

1)新建一个目录和一个 Dockerfile

mkdir sinatra
cd sinatra
touch Dockerfile
2)编辑Dockerfile文件

# This is a comment
FROM centos:7.5.1804
MAINTAINER Docker liushao
RUN ["yum", "install", "vim"]

注:Dockerfile 基本的语法

#  注释

FROM 指令告诉 Docker 使用哪个镜像作为基础

MAINTAINER 写入维护者信息

RUN 创建中运行指令

ADD 命令复制本地文件到镜像,例
ADD myApp /var/www

EXPOSE 命令来向外部开放端口,例
EXPOSE 80

CMD 命令来描述容器启动后运行的程序,例
CMD ["/usr/sbin/apachectl", "-D", "FOREGROUND"]

3)使用 docker build 生成镜像

docker build -t="centos:7.5.1804.v3" .
其中:
-t 标记来添加 tag,指定新的镜像的用户信息。
“.” 是 Dockerfile 所在的路径(当前目录),也可以替换为一个具体的 Dockerfile 的路径。

四、修改标签docker tag

docker tag 9fc9b1a5a92f centos:7.5.1804.v3
注:
9fc9b1a5a92f 镜像ID
centos:7.5.1804.v3 新的镜像名称及版本

注:可用同镜像多标签做版本控制

五、从本地文件系统导入镜像

cat at centos-7.5.1804-x86_64.tar.gz  |docker import - centos:7.5.1804.v3

六、上传镜像

1、登陆Docker Hub

docker login -u 用户名
Passwd:
Login Succeeded 

2、上传镜像docker push

docker push centos:7.5.1804.v3

七、存出和载入镜像

1、存出镜像docker save

docker save -o centos_7.5.1804.tar centos:7.5.1804

2、载入镜像docker load

docker load --input centos_7.5.1804.tar
或
docker load < centos_7.5.1804.tar
注:这将导入镜像以及其相关的元数据信息(包括标签等)。

3、移除本地镜像docker rmi

docker rmi centos:7.5.1804

本文地址:https://www.ezliushao.com/324.html
加入我们:请加入刘少技术博客交流群:扫描二维码刘少技术博客的QQ交流群 | 浪子丶刘少 QQ:1150110267(注:微信暂停添加好友)
版权声明:本文为原创文章,版权归 浪子丶刘少 所有,欢迎分享本文,转载请保留出处!

发表评论


表情