python镜像源_docker学习3镜像的基本使⽤
前⾔
Docker的三⼤核⼼概念:镜像、容器、仓库。初学者对镜像和容器往往分不清楚,学过⾯向对象的应该知道类和实例,这跟⾯向对象⾥⾯的概念很相似
我们可以把镜像看作类,把容器看作类实例化后的对象。
docker⾯向对象
镜像类
容器实例
查看镜像列表
使⽤docker images查看本地已经下载的镜像
REPOSITORY:
表⽰镜像的仓库源
TAG:
镜像的标签,区分不同版本
IMAGE ID:
镜像ID,16进制组成,唯⼀标识
CREATED:
镜像创建时间
SIZE:
镜像⼤⼩
[root@yoyo ~]# docker images
REPOSITORY                TAG                IMAGE ID            CREATED            SIZE
centos/python-36-centos7  latest              b8d15efaa8ec        2 months ago        651MB
ubuntu                    15.10              9b9cb95443b5        2 years ago        137MB
training/webapp            latest              6fae60ef3446        4 years ago        349MB
[root@yoyo ~]#
我们本地下载的镜像⽂件是从仓库下载过来的,每个镜像在仓库源都有个名称,也就是 REPOSITORY,同⼀个镜像源可以有不同的版本,同标签(TAG)区分
下载镜像
直接使⽤ docker pull centos 默认是下载的最新的latest版本
docker pull centos
[root@yoyo ~]# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
8ba884070f61: Already exists
Digest: sha256:b5e66c4651870a1ad435cd75922fe2cb943c9e973a9673822d1414824a1d0475
Status: Downloaded newer image for centos:latest
[root@yoyo ~]# docker images
REPOSITORY                TAG                IMAGE ID            CREATED            SIZE
centos/python-36-centos7  latest              b8d15efaa8ec        2 months ago        651MB
centos                    latest              9f38484d220f        3 months ago        202MB
ubuntu                    15.10              9b9cb95443b5        2 years ago        137MB
training/webapp            latest              6fae60ef3446        4 years ago        349MB
[root@yoyo ~]#
搜索镜像
docker search搜索相关的镜像⽂件
[root@yoyo ~]# docker search centos
NAME                              DESCRIPTION                                    STARS              OFFICIAL            AUTOMATED centos                            The official build of CentOS.                  5424                [OK]
ansible/centos7-ansible            Ansible on Centos7                              121                                    [OK]
jdeathe/centos-ssh                CentOS-6 6.10 x86_64 / CentOS-7 7.6.1810 x86…  110                                    [OK] consol/centos-xfce-vnc            Centos container with "headless" VNC session…  91                                      [OK] imagine10255/centos6-lnmp-php56    centos6-lnmp-php56                              57                                      [OK] centos/mysql-57-centos7            MySQL 5.7 SQL database server                  54
tutum/centos                      Simple CentOS docker image with SSH access      44
centos/postgresql-96-centos7      PostgreSQL is an advanced Object-Relational (37)
kinogmt/centos-ssh                CentOS with SSH                                27                                      [OK]
如果我想下载⼀个centos7.5的镜像版本,该如何到呢?
查TAG版本
接下来指定TAG名称下载,后⾯加个冒号:标签名称
docker pull centos:centos7.5.1804
[root@yoyo ~]# docker pull centos:centos7.5.1804
centos7.5.1804: Pulling from library/centos
5ad559c5ae16: Pull complete
Digest: sha256:7a45e4a1efbaafc1d9aa89925b6fdb33288a96d35ea0581412316e2f0ad3720a
Status: Downloaded newer image for centos:centos7.5.1804
[root@yoyo ~]# docker images
REPOSITORY                TAG                IMAGE ID            CREATED            SIZE
centos/python-36-centos7  latest              b8d15efaa8ec        2 months ago        651MB
centos                    centos7.5.1804      cf49811e3cdb        3 months ago        200MB
centos                    latest              9f38484d220f        3 months ago        202MB
ubuntu                    15.10              9b9cb95443b5        2 years ago        137MB
training/webapp            latest              6fae60ef3446        4 years ago        349MB
[root@yoyo ~]#
更新镜像
上⾯下载的TAG名称是centos7.5.1804,这个太长了不太好记,可以改成⼀个⾃⼰喜欢的TAG名称,⽐如7.5
更新镜像需先启动容器
docker run -d centos:centos7.5.1804
[root@yoyo ~]# docker run -d centos:centos7.5.1804
64cc20e825e3cb70bdbb5c22dac72b061fba77895e794ae7a06d57d2ddfb8a96
[root@yoyo ~]# docker ps -a
CONTAINER ID        IMAGE                      COMMAND                  CREATED            STATUS                      PORTS              NAMES
64cc20e825e3        centos:centos7.5.1804      "/bin/bash"              38 seconds ago      Exited (0) 35 seconds ago                      recursing_ardinghelli fefdcbb9c662        centos/python-36-centos7  "container-entrypoin…"  24 hours ago        Exited (0) 24 hours ago                        quirky_cray
9df329b5effd        centos/python-36-centos7  "container-entrypoin…"  24 hours ago        Exited (0) 24 hours ago                        nifty_roentgen
启动之后,查看到容器id号64cc20e825e3,根据容器id,去修改
-m:提交的描述信息
-a:指定镜像作者
e218edb10161:
容器ID
runoob/ubuntu:v2:指定要创建的⽬标镜像名
docker commit -m=”update tag name” -a=”yoyo” 64cc20e825e3  centos:7.5
[root@yoyo ~]# docker commit -m="update tag name" -a="yoyo" 64cc20e825e3  centos:7.5
sha256:254d4dfe9df7765ccf511bd8e7ff1f5de96b0b5a0af2542ee4cd30c8ac0575b3
[root@yoyo ~]# docker images
REPOSITORY                TAG                IMAGE ID            CREATED              SIZE
centos                    7.5                254d4dfe9df7        8 seconds ago        200MB
centos                    latest              b9af5ce31055        35 seconds ago      200MB
centos/python-36-centos7  latest              b8d15efaa8ec        2 months ago        651MB
ubuntu                    15.10              9b9cb95443b5        2 years ago          137MB
training/webapp            latest              6fae60ef3446        4 years ago          349MB
[root@yoyo ~]#
设置镜像TAG
如果只是修改镜像TAG名称,可以⽤docker tag给镜像取个新的tag名称, 这⾥的id是镜像的id docker tag 254d4dfe9df7 centos:v7.5
[root@yoyo ~]# docker tag 254d4dfe9df7 centos:v7.5
[root@yoyo ~]# docker images
REPOSITORY                TAG                IMAGE ID            CREATED            SIZE
centos                    7.5                254d4dfe9df7        9 minutes ago      200MB
centos                    v7.5                254d4dfe9df7        9 minutes ago      200MB
centos                    latest              b9af5ce31055        9 minutes ago      200MB
centos/python-36-centos7  latest              b8d15efaa8ec        2 months ago        651MB
ubuntu                    15.10              9b9cb95443b5        2 years ago        137MB
training/webapp            latest              6fae60ef3446        4 years ago        349MBmysql社区版国内镜像下载
[root@yoyo ~]#
这时候会多了⼀个v7.5的标签
删除镜像
上⾯多了个7.5的TAG,并且IMAGE ID是重复的,可以使⽤docker rmi 删掉它,可以加-f参数强制删除-f :强制删除;
—no-prune :不移除该镜像的过程镜像,默认移除;
[root@yoyo ~]# docker rmi centos:7.5
Untagged: centos:7.5
[root@yoyo ~]# docker images
REPOSITORY                TAG                IMAGE ID            CREATED            SIZE
centos                    v7.5                254d4dfe9df7        12 minutes ago      200MB
centos                    latest              b9af5ce31055        12 minutes ago      200MB
centos/7.5                latest              62a395cab78e        13 minutes ago      200MB
centos/python-36-centos7  latest              b8d15efaa8ec        2 months ago        651MB
centos                    centos7.5.1804      cf49811e3cdb        3 months ago        200MB
centos                                  9f38484d220f        3 months ago        202MB
ubuntu                    15.10              9b9cb95443b5        2 years ago        137MB
training/webapp            latest              6fae60ef3446        4 years ago        349MB
[root@yoyo ~]#

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。