zoukankan      html  css  js  c++  java
  • Docker 构建映像

    1.用docker commit构建映像
      1.docker run -i -t centos /bin/bash  //启动一个容器,启动后默认进入该窗口的bash进程
      2.yum install -y epel-release.noarch  //为启动的窗口安装软件源
      3.yum install -y nginx  //为启动的容器安装nginx
      4.exit  //退出该容器,回到宿主机环境
      5.docker commit 容器ID dingyingsi/nginx  //将上次创建的窗口ID当作映像提交到本地,dingyingsi是repository名称,nginx是image名称
      6.docker images  //可以查看到上步提交的映像
      注意:
        1.一定要区分开容器和映像的区别;
        2.有了dingyingsi/nginx后,下次可以直接使用该映像来启动容器,而不用为这个容器安装nginx;
        3.docker commit -m="this is a container contains nginx" --author="dingyingsi" 容器ID dingyingsi/nginx,类似git不作多余解释;
     2.Dockerfile构建映像
     1.创建Dockerfile文件:
       
     2.docker build -t="dingyingsi/nginx:dockerfile" .  //运行这个命令开始用Dockerfile构建映像,当前目录中一定要包含Dockerfile文件;
     3.docker images  //可以查看到上步提交的映像
     3.在使用Dockerfile构建映像时,如果将Dockerfile脚本中RUN yum install -y nginx改成 RUN yum install -y ngin 构建过程就会失败。如下图:
      在Dockerfile中, 每RUN指令执行时,都会创建一个新的映像层,当每个RUN指令执行完时,会自动提交该层;因此RUN指令在哪上步出错时,只需要用docker run 命令进入该映像层对应的上一次未出错容器即可;
      上将中nginx写错成ngin,故执行时出错,只需要运行  docker run -i -t b677fae24538 /bin/bash ,即可进入 RUN yum install -y epel-release.noarch 对应的映像层容器;
      在此映像层容器中执行yum install -y ngin命令,即可得到错误详细提示;
     
     
     
  • 相关阅读:
    Java RMI 使用例子
    Hessian 使用例子
    Spring 使用javaconfig配置aop
    Spring 使用xml配置aop
    Spring Junit集成测试
    Spring 使用javaconfig配置
    Spring @Autowired注解用在集合上面,可以保持接口的所有实现类
    在linux上搭建nexus私服(CentOS7)
    PostgresSQL使用Copy命令能大大提高数据导入速度
    PHP curl get post请求
  • 原文地址:https://www.cnblogs.com/yingsi/p/8746061.html
Copyright © 2011-2022 走看看