zoukankan      html  css  js  c++  java
  • docker 14 dockerfile自定义mycentos

    Base镜像(scratch) 

        Docker Hub中99%的镜像是通过在base镜像中安装和配置需要的软件构建出来的。也就是说base镜像是所有其他镜像的鼻祖。

    hub默认centos镜像是什么情况

    [root@t-docker chenzx]# docker run -it centos
    [root@ef7873879474 /]# vim a.txt  ##默认ceonts不支持vim命令
    bash: vim: command not found
    [root@ef7873879474 /]# ifconfig   ##默认centos不支持ifconfig命令
    bash: ifconfig: command not found
    

    自定义镜像mycentos

    1、编写Dokcerfile文件

    [root@t-docker mycentos]# cat Dockerfile 
    FROM centos
    MAINTAINER chenzx chenzx@11.com
    ENV MYPATH /usr/local
    WORKDIR $MYPATH
    RUN yum -y install vim
    RUN yum -y install net-tools
    EXPOSE 80
    CMD echo $MYPATH
    CMD echo "success-----ok"
    CMD /bin/bash

    2、构建

        语法:docker build -t 新镜像名字:TAG .

    [root@t-docker mycentos]# docker build -f ./Dockerfile -t mycentos:1.3 .
    Sending build context to Docker daemon  2.048kB
    Step 1/10 : FROM centos
     ---> 5182e96772bf
    Step 2/10 : MAINTAINER chenzx chenzx@11.com
     ---> Running in bf692c9a8f30
    Removing intermediate container bf692c9a8f30
     ---> be7c6d72dcf6
    Step 3/10 : ENV MYPATH /usr/local
     ---> Running in bfbe973063c4
    Removing intermediate container bfbe973063c4
     ---> b6117be61d21
    Step 4/10 : WORKDIR $MYPATH
     ---> Running in dc207977e37e
    Removing intermediate container dc207977e37e
     ---> a299de1b142d
    Step 5/10 : RUN yum -y install vim
     ---> Running in 7b18a2ea02ba
    Loaded plugins: fastestmirror, ovl
    Determining fastest mirrors
     * base: mirror.bit.edu.cn
     * extras: mirror.bit.edu.cn
     * updates: mirror.bit.edu.cn
    Resolving Dependencies
    --> Running transaction check
    ---> Package vim-enhanced.x86_64 2:7.4.160-4.el7 will be installed
    --> Processing Dependency: vim-common = 2:7.4.160-4.el7 for package: 2:vim-enhanced-7.4.160-4.el7.x86_64
    --> Processing Dependency: which for package: 2:vim-enhanced-7.4.160-4.el7.x86_64
    --> Processing Dependency: perl(:MODULE_COMPAT_5.16.3) for package: 2:vim-enhanced-7.4.160-4.el7.x86_64
    --> Processing Dependency: libperl.so()(64bit) for package: 2:vim-enhanced-7.4.160-4.el7.x86_64
     ---> 41b54eafc062
    Step 6/10 : RUN yum -y install net-tools
     ---> Running in 4fe95a3f928d
    Loaded plugins: fastestmirror, ovl
    Loading mirror speeds from cached hostfile
     * base: mirror.bit.edu.cn
     * extras: mirror.bit.edu.cn
     * updates: mirror.bit.edu.cn
    Resolving Dependencies
    --> Running transaction check
    Step 7/10 : EXPOSE 80
     ---> Running in b49331f041a0
    Removing intermediate container b49331f041a0
     ---> 255ce503616b
    Step 8/10 : CMD echo $MYPATH
     ---> Running in 0c8a45aa210f
    Removing intermediate container 0c8a45aa210f
     ---> b70d750b50c6
    Step 9/10 : CMD echo "success-----ok"
     ---> Running in 0f82aaeab3af
    Removing intermediate container 0f82aaeab3af
     ---> 41680031171e
    Step 10/10 : CMD /bin/bash
     ---> Running in 5694bd9a1dab
    Removing intermediate container 5694bd9a1dab
     ---> 0c868c56748b
    Successfully built 0c868c56748b
    Successfully tagged mycentos:1.3
    [root@t-docker mycentos]#
    

    3、运行

    [root@t-docker mycentos]# docker run -it mycentos:1.3
    [root@28ab180a72d7 local]# pwd  ##落脚点是/usr/local
    /usr/local
    [root@28ab180a72d7 local]# vim a.txt ##vim命令也有了
    [root@28ab180a72d7 local]# ifconfig ##ifconfig命令有了
    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 172.17.0.2  netmask 255.255.0.0  broadcast 172.17.255.255
            ether 02:42:ac:11:00:02  txqueuelen 0  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    [root@28ab180a72d7 local]#

    4、列出镜像的变更历史 

        功能:从底下往上看,可以看出制作mycentos镜像的历史过程。

    [root@t-docker mycentos]# docker images mycentos
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    mycentos            1.3                 0c868c56748b        12 minutes ago      442MB
    [root@t-docker mycentos]# docker history 0c868c56748b
    IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
    0c868c56748b        12 minutes ago      /bin/sh -c #(nop)  CMD ["/bin/sh" "-c" "/bin…   0B                  
    41680031171e        12 minutes ago      /bin/sh -c #(nop)  CMD ["/bin/sh" "-c" "echo…   0B                  
    b70d750b50c6        12 minutes ago      /bin/sh -c #(nop)  CMD ["/bin/sh" "-c" "echo…   0B                  
    255ce503616b        12 minutes ago      /bin/sh -c #(nop)  EXPOSE 80                    0B                  
    1cb7e8747969        12 minutes ago      /bin/sh -c yum -y install net-tools             93.7MB              
    41b54eafc062        12 minutes ago      /bin/sh -c yum -y install vim                   149MB               
    a299de1b142d        13 minutes ago      /bin/sh -c #(nop) WORKDIR /usr/local            0B                  
    b6117be61d21        13 minutes ago      /bin/sh -c #(nop)  ENV MYPATH=/usr/local        0B                  
    be7c6d72dcf6        13 minutes ago      /bin/sh -c #(nop)  MAINTAINER chenzx chenzx@…   0B                  
    5182e96772bf        3 weeks ago         /bin/sh -c #(nop)  CMD ["/bin/bash"]            0B                  
    <missing>           3 weeks ago         /bin/sh -c #(nop)  LABEL org.label-schema.sc…   0B                  
    <missing>           3 weeks ago         /bin/sh -c #(nop) ADD file:6340c690b08865d7e…   200MB
    

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28916011/viewspace-2213388/,如需转载,请注明出处,否则将追究法律责任。

  • 相关阅读:
    POJ 1426 Find The Multiple(数论——中国同余定理)
    POJ 2253 Frogger(Dijkstra变形——最短路径最大权值)
    POJ 3790 最短路径问题(Dijkstra变形——最短路径双重最小权值)
    POJ 3278 Catch That Cow(模板——BFS)
    HDU 1071 The area
    HDU 1213 How Many Tables(模板——并查集)
    POJ 1611 The Suspects
    light oj 1214 Large Division
    POJ 1258 Agri-Net(Prim算法求解MST)
    POJ 2387 Til the Cows Come Home(模板——Dijkstra算法)
  • 原文地址:https://www.cnblogs.com/charon2/p/10465021.html
Copyright © 2011-2022 走看看