1. ----------------------------
    2. # 编写DockerFile
    3. ----------------------------
    4. $ cd dockerfile/
    5. $ ls
    6. $ vim demo
    7. $ cat demo
    8. FROM centos
    9. MAINTAINER jack<517380692@qq.com>
    10. ENV MYPATH /usr/local
    11. WORKDIR $MYPATH
    12. RUN yum -y install vim
    13. RUN yum -y install net-tools
    14. EXPOSE 80
    15. CMD echo $MYPATH
    16. CMD echo "----------"
    17. CMD /bin/bash
    18. ----------------------------
    19. # 由DockerFile构建镜像
    20. ----------------------------
    21. $ docker build -f demo -t mycentos:1.0 . #一定要加最后的".",这是个路径
    22. # docker build [-f 自定义的DockerFile] [-t 自定义镜像名:版本号] .
    23. #简略输出内容,由输出内容可以发现整个镜像的生成是按顺序执行堆叠的
    24. Step 1/10 : FROM centos
    25. ...
    26. Step 2/10 : MAINTAINER jack<517380692@qq.com>
    27. ...
    28. Step 3/10 : ENV MYPATH /usr/local
    29. ...
    30. Step 4/10 : WORKDIR $MYPATH
    31. ...
    32. Step 5/10 : RUN yum -y install vim
    33. ...
    34. Step 6/10 : RUN yum -y install net-tools
    35. ...
    36. Step 7/10 : EXPOSE 80
    37. ...
    38. Step 8/10 : CMD echo $MYPATH
    39. ...
    40. Step 9/10 : CMD echo "----------"
    41. ...
    42. Step 10/10 : CMD /bin/bash
    43. ...
    44. Successfully built 620f5b31cbca
    45. Successfully tagged mycentos:1.0
    46. $ docker history 620f5b31cbca #查看镜像构建过程
    47. IMAGE CREATED CREATED BY SIZE COMMENT
    48. 620f5b31cbca 44 minutes ago /bin/sh -c #(nop) CMD ["/bin/sh" "-c" "/bin… 0B
    49. dd424f3afe09 44 minutes ago /bin/sh -c #(nop) CMD ["/bin/sh" "-c" "echo… 0B
    50. 355186aafd54 44 minutes ago /bin/sh -c #(nop) CMD ["/bin/sh" "-c" "echo… 0B
    51. 451dd8c736f3 44 minutes ago /bin/sh -c #(nop) EXPOSE 80 0B
    52. 9a753ad71967 44 minutes ago /bin/sh -c yum -y install net-tools 21.8MB
    53. 4eaf416dbe04 44 minutes ago /bin/sh -c yum -y install vim 54.7MB
    54. 2ef2ea009dc7 44 minutes ago /bin/sh -c #(nop) WORKDIR /usr/local 0B
    55. 718902cc6ff6 44 minutes ago /bin/sh -c #(nop) ENV MYPATH=/usr/local 0B
    56. 8664dfdb5bec 44 minutes ago /bin/sh -c #(nop) MAINTAINER jack<517380692… 0B
    57. 9d5bccb1776b 3 months ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0B
    58. <missing> 3 months ago /bin/sh -c #(nop) LABEL org.label-schema.sc… 0B
    59. <missing> 3 months ago /bin/sh -c #(nop) ADD file:9aef459f0ff88a770… 255MB
    60. ----------------------------
    61. # 测试,创建并运行容器
    62. ----------------------------
    63. $ docker images
    64. REPOSITORY TAG IMAGE ID CREATED SIZE
    65. mycentos 1.0 620f5b31cbca 7 minutes ago 332MB
    66. $ docker run -it 620f5b31cbca