docker 阅读 1627
docker 第9.4章 DockerFile之自定义centos镜像

docker 第9.4章 DockerFile之自定义centos镜像

2023-06-08 • lulubin

一、要求

Centos7 镜像具备 vim+ifconfig+jdk8 

二、下载 JDK

JDK 的下载镜像地址:https://www.oracle.com/java/technologies/downloads/#java8

https://file.lulublog.cn/images/3/2023/06/qsfpydgm7Z66g01xzp52nD6671Mt2G.jpg?sign=1b9ba07e8f4fdbc36aebe970228e37c4&t=6af33f80

下载:jdk-8u371-linux-x64.tar.gz,即 jdk-8u***-linux-x64.tar.gz

三、编写 Dockerfile

定义 Dockerfile 文件

cd /
mkdir docker
cd docker
vim Dockerfile

将下面的代码粘贴

FROM centos:7

MAINTAINER lulubinENV MYPATH /usr/local

WORKDIR $MYPATH

#安装vim编辑器
RUN yum -y install vim
#安装ifconfig命令查看网络IP
RUN yum -y install net-tools
#安装java8及lib库
RUN yum -y install glibc.i686
RUN mkdir /usr/local/java

#ADD 是相对路径jar,把jdk-8u371-linux-x64.tar.gz添加到容器中,安装包必须要和Dockerfile文件在同一位置
ADD jdk-8u371-linux-x64.tar.gz /usr/local/java/

#配置java环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_371
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

EXPOSE 80

CMD echo $MYPATH
CMD echo "success--------------ok"
CMD /bin/bash

将下载的 jdk 放在和 Dockerfile 同目录下

注意:jdk-8u371-linux-x64.tar.gz、usr/local/java/jdk1.8.0_371,这几个名称后缀要改成和你下载的文件名称一致

https://file.lulublog.cn/images/3/2023/06/qu2nuOQLg22S2EQ22sK5DKU2LSOue2.jpg?sign=b6c90b6ba3908e73c626c829254f2c74&t=6af33f80

四、构建镜像

构建镜像

docker build -t centosjava8:1.5 .

备注:这里的“.”表示当前目录有一个 Dockerfile 文件

https://file.lulublog.cn/images/3/2023/06/cUN7C5roCne7N5NF63c5Fr55u0s45c.jpg?sign=7c9394fb110953ad52df56156073decb&t=6af33f80

查看镜像

docker images

https://file.lulublog.cn/images/3/2023/06/jfwFk3xOfkvFZ9BcfE9V8kR5rKPBdB.jpg?sign=0e79b289e748ede330f8e7c3fc57e913&t=6af33f80

运行镜像

docker run -it centosjava8:1.5 /bin/bash

五、测试

测试 java

java -version

https://file.lulublog.cn/images/3/2023/06/yfl5BUyFwl97ZF31fyuF9LHL9y7Ywh.jpg?sign=c2544efe508e2d88295634e2d9a05124&t=6af33f80

测试 ifconfig

ifconfig

https://file.lulublog.cn/images/3/2023/06/WnMVvUzVceF9HMcN6v3NQEtQfuUE3o.jpg?sign=97bc692450f530830ab3d2963bcbdc9a&t=6af33f80

docker文章
带到手机上看