通过Dockerfile创建JDK8的CentOS镜像
[root@node4 ~]# mkdir jdk8_centos
[root@node4 ~]# cd jdk8_centos/
准备jdk安装包
[root@node4 jdk8_centos]# ls
Dockerfile server-jre-8u152-linux-x64.tar.gz
[root@node4 jdk8_centos]# vim Dockerfile
#生成的新镜像以centos镜像为基础
FROM sshd_dockerfile
MAINTAINER by liuguangshun (liuguangshun@zljr100.com)
#升级系统
RUN yum -y update
#添加jdk安装包
RUN mkdir /usr/java
ADD server-jre-8u152-linux-x64.tar.gz /usr/java/
#安装jdk
RUN sed -i '$a\export LANG=en_US.UTF-8' /etc/profile
RUN sed -i '$a\JAVA_HOME=/usr/java/jdk1.8.0_152' /etc/profile
RUN sed -i '$a\JRE_HOME=/usr/java/jdk1.8.0_152/jre' /etc/profile
RUN sed -i '$a\PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin' /etc/profile
RUN sed -i '$a\CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib' /etc/profile
RUN sed -i '$a\export JAVA_HOME JRE_HOME PATH CLASSPATH' /etc/profile
#开放窗口的22端口
EXPOSE 22
#运行脚本,启动sshd服务
CMD ["/usr/local/sbin/run.sh"]
[root@node4 jdk8_centos]# docker build -t jdk8_dockerfile .
[root@node4 jdk8_centos]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
jdk8_dockerfile latest 0324608bf1c3 12 minutes ago 488.7 MB
sshd_dockerfile latest eaae6e1fb5de 4 hours ago 335.4 MB
sshd-centos latest ae76d4ad6e0c 5 hours ago 314.6 MB
docker.io/centos latest 196e0ce0c9fb 6 weeks ago 196.6 MB
[root@node4 jdk8_centos]# docker run -p 10022:22 -d jdk8_dockerfile /usr/local/sbin/run.sh