zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    原笔迹手写实现平滑和笔锋效果之:笔迹的平滑(二)
    区块链入门(4)Truffle创建项目,编译,及项目部署
    github的基本使用
    ES6新特性之傻瓜式说明
    webpack之傻瓜式教程及前端自动化入门
    查找树莓派ip地址的常用方法
    树莓派的无屏幕安装的教程
    采用QHD分辨率使用kinect2_calibration,完成QHD图像校正
    编译ORBSLAM2 build_ros.sh,实现kinect2在ROS环境下运行ORBSLAM2
    重写kinect2_viewer,编译高博kinect2在orbslam2上跑的程序(解决cmakefile中库依赖和头文件的问题)
  • 原文地址:https://www.cnblogs.com/linuxws/p/6873820.html
Copyright © 2011-2022 走看看