zoukankan      html  css  js  c++  java
  • 使用dockerfile文件创建镜像时docker build没有反应

    问题:

      先 docker pull centos:7 拉取了一个官方的基础镜像,为后续创建jdk8镜像做准备,在创建如下的dockerfile文件  

    执行docker build -t jdk_8u191:20190307 . jdk_dockerfile  时都没有反应

      jdk_dockerfile文件内容

    # 以此镜像作为基础镜像构建新的镜像
    FROM centos:7

    # 维护者信息 MAINTAINER chen
    # 将
    jdk-8u191-linux-x64.tar.gz文件添加到新的镜像的的/usr/local/路径下,使用ADD指令会直接对jdk-8u144-linux-x64.tar.gz进行解压缩,不用再单独的tar解压jdk了
    ADD jdk-8u191-linux-x64.tar.gz /usr/local/

    # 设置环境变量
    ENV JAVA_HOME /usr/local/jdk1.8.0_191
    ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    ENV PATH $PATH:$JAVA_HOME/bin

     执行创建命令,没有反应

    root@ubuntu:/# docker build -t jdk_8u191:20190307 . -f jdk_dockerfile



    解决:

      在自己的用户目录下重新创建 jdk_dockerfile文件,

    然后执行

      

       

    docker build -t jdk_8u191:20190307 . -f jdk_dockerfile

    参数解释:

      -t :指定创建的镜像的名称和tag,如-t jdk_8u191:20190307

      . 注意有一个.这个表示当前目录,必不可少的

      -f : 指定要执行的dockerfile文件,如果文件名直接叫dockerfile,那么就不用-f参数了

    顺便使用该镜像运行一个容器,查看一下jdk是否安装成功

    命令解释

      docker images :查看所有镜像

      docker run -d -it jdk_8u191:20190307 /bin/bash :使用镜像运行一个容器

      docker ps :查看正在运行的容器

      docker exec -it 404 /bin/bash : 进入容器id为404开头的容器中

    分析:可能是由于本来的基础镜像是自己用户创建的,用root用户不能执行

  • 相关阅读:
    缩点【洛谷P1262】 间谍网络
    模板-割点
    Tarjan缩点+LCA【洛谷P2416】 泡芙
    模拟赛 10-20考试记
    BFS【bzoj1667】: [Usaco2006 Oct]Cows on Skates滑旱冰的奶牛
    最短路【bzoj2464】: 中山市选[2009]小明的游戏
    linux /dev/mapper/centos-root 被占满
    Centos7中安装Mysql8并修改密码策略并远程连接
    Centos7中PHP编译安装mysqli扩展报错
    Linux中Composer 在安装依赖包与本地php版本不符问题
  • 原文地址:https://www.cnblogs.com/gcgc/p/10487802.html
Copyright © 2011-2022 走看看