• docker镜像


    创建仓库:

    docker run -d -p 5000:5000 -v /root/registry:/data/docker registry:2

    将仓库存放于容器内的/data/docker目录下,如果容器被删除,镜像也会丢失,指定本地一个目录/root/registry挂载到容器内的/tmp/registry下.

    registry:2 起一个镜像名

    -d 后台执行

    -p -P 指定容器暴露的端口。

    -v  给容器挂载存储卷,挂载到容器的某个目录

    制作镜像:

    docker commit 449d0022bafa 172.17.0.3:5000/linuxws

    docker run -i -d -p 1880:80 -p 13306:3306 -p 122:22 -p 123:23 -p 69:69/udp -p 514:514/tcp -v /Users/apple/znms/03_code/trunk/z-nms:/var/www/html/z-nms -e "REMOTE_HOST=调试ip地址" --restart=always znms:v1

    docker images : 列出本地镜像。

    格式:docker images [OPTIONS] [REPOSITORY[:TAG]]
    -a :    列出本地所有镜像
    --digests: 显示镜像的摘要。显示DIGEST
    -f :     显示满足条件的镜像
    --no-trunc: 显示IMAGE ID
    -q:     只显示镜像ID

    docker rmi : 删除本地一个或多个镜像。  
    #格式:docker rmi [OPTIONS] IMAGE [IMAGE...]
     -f :强制删除;
    --no-prune :不移除该镜像的过程镜像,默认移除;

    docker tag : 标记本地镜像,将其归入某一仓库。
      格式:
    docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]

    commit --通过容器创建本地镜像 生成镜像的命名:docker commit centos_v1 centos:v1

    #docker push victor/centos:v1,其中ivictor是用户名;v1是tag,可不写,默认是latest

    因为它push到docker hub中时,推送到相应用户下,必须指定用户名。

    将镜像ubuntu:15.10标记为 runoob/ubuntu:v3 镜像。

    docker tag ubuntu:15.10 runoob/ubuntu:v3
    root@runoob:~# docker images   runoob/ubuntu:v3
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    runoob/ubuntu       v3                  4e3b13c8a266        3 months ago        136.3 MB

    虚悬镜像:

    镜像列表中,有一个特殊的镜像,这个镜像没有仓库名,没有标签,均为 <none> :

    <none> <none> 00285df0df87 5 days ago 342 MB

    官方发布了新版本后,新旧镜像同名,从而出现仓库名、标签均为 <none> 的镜像。docker build 也会导致这种现象。

    显示这类镜像:

    docker images -f dangling=true

    虚悬镜像没有用处,可以删除:$ docker rmi $(docker images -q -f dangling=true)

    中间层镜像

    $ docker images -a  #显示包括中间层镜像和顶级镜像。

    这样会看到很多无标签的镜像,与虚悬镜像不同,这些镜像都是其它镜像所依赖的镜像。这些无标签镜像不应该删除,否则会导致上层镜像因为依赖丢失而出错。实际上,这些镜像也没必要删除,因为相同的层只会存一遍,而这些镜像是别的镜像的依赖,因此并不会因为它们被列出来而多存了一份。只要删除那些依赖它们的镜像后,这些依赖的中间层镜像也会被连带删除。

    制作镜像:

    sudo docker commit -m='A new image' --author='Aomine' 614122c0aabb aoct/apache2

    -m指定行创建的镜像的提交信息。--author指定镜像作者,接着是容器ID、目标镜像仓库、镜像名。

     
     
    ###########

    2、保存镜像
    我们的镜像做好之后,我们要保存起来,以供备份使用,该怎么做?使用docker save命令,保存镜像到本地。

    [root@rocketmq-nameserver4 dev]# docker save -o rocketmq.tar rocketmq ##-o:指定保存的镜像的名字;rocketmq.tar:保存到本地的镜像名称;rocketmq:镜像名字,通过"docker images"查看
    [root@rocketmq-nameserver4 dev]# ll 


    rocketmq.tar为刚保存的镜像

    3、载入镜像
    我们有了本地的镜像文件,在需要的时候可以使用docker load将本地保存的镜像再次导入docker中。
    docker load --input rocketmq.tar 或 docker load < rocketmq.tar

    4、删除镜像
    有些镜像过时了,我们需要删除。使用如下的命令:docker rmi -f image_id ##-f:表示强制删除镜像;image_id:镜像id

  • 相关阅读:
    koa中静态文件资源中间件实现
    js数组扁平化
    js读写txt文件
    JDBC配置MSSQL
    Eclipse报错:Setting property 'source' to 'org.eclipse.jst.jee.server:xx' did not find a matching property
    JSON字符串的生成
    以POST方式推送JSON数据,并接收返回的服务器消息
    C# XML与Json之间相互转换实例详解
    eclipse配置Tomcat服务器server locations的方法
    uwsgi基础——SNMP
  • 原文地址:https://www.cnblogs.com/linuxws/p/6873820.html
Copyright © 2020-2023  润新知