尝试用Dockerfile将原始的centos镜像的基础上添加vim + ifconfig +jdk1.8,构建新的centosjava8:1.5镜像
😡有两个坑:
-
😡这里是错误演示:原教程Dockerfile中基础镜像是FROM centos,而我们内核系统是centos7,于是在docker build -t centosjava8:1.5 /bin/bash命令时,会出现如下错误

-
在尝试与yum源修改后还是报错,于是修改Dockerfile文件为:FROM centos:7
-
于是构建成功,如图

-
执行ifconfig+vim命令均没有问题,在执行java -version过程中一直出现问题

-
错误原因:jdk环境路径问题,原教程下载的是jdk-8u171-linux-x64.tar.gz,转移解压后的文件目录名为jdk1.8.0_171,而在Dockerfile文件中:

-
ENV JAVA_HOME /usr/local/java/jdk1.8.0_171 (使用docker insepect 容器ID查看)

-
这里自己所用的jdk为:jdk-8u341-linux-i586.tar.gz,因此因该把上面一行修改为:ENV JAVA_HOME /usr/local/java/jdk1.8.0_341

-
Dockerfile修改为:

-
重新构建docker build -it centosjava8:1.5 /bin/bash

本文讲述了在使用Dockerfile构建基于CentOS7的镜像时遇到的问题,包括基础镜像版本不匹配导致的构建错误,以及JDK环境变量设置不正确引起的java命令执行失败。通过修正Dockerfile中的FROM指令和调整JAVA_HOME环境变量,最终成功构建了包含vim, ifconfig和JDK1.8的centosjava8:1.5镜像。
2999

被折叠的 条评论
为什么被折叠?



