做java环境镜像之前必须先做操作系统镜像,可以从docker的库中用docker pull imagename下载,也可以自己制作镜像,制作方法:docker制作操作系统镜像
弄好镜像之后,执行命令
docker images
列出你本地的镜像,如果有制作好的镜像就会显示如下:
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE centos7 latest abb462089c51 51 minutes ago 471.8 MB
其中centos7就是我自己制作的操作系统镜像
然后自己在linux下找个文件夹,把jdk和tomcat传到文件夹下,我本地路径是:/opt/song
文件夹下面放上jdk的安装包和tomcat的安装包还有Dockerfile文件
如图:
其中Dockerfile是自己创建的文件,内容如下:
FROM centos7:latest MAINTAINER song.xl #把java与tomcat添加到容器中 ADD jdk-7u76-linux-x64.tar.gz /usr/local/ ADD apache-tomcat-7.0.67.tar.gz /usr/local/ #配置java与tomcat环境变量 ENV JAVA_HOME /usr/local/jdk1.7.0_76 ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ENV CATALINA_HOME /usr/local/apache-tomcat-7.0.67 ENV CATALINA_BASE /usr/local/apache-tomcat-7.0.67 ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin #容器运行时监听的端口 EXPOSE 8080
然后运行buid的命令:
docker build -t jdk7/centos .
其中jdk7/centos是image的名字,执行完成就会看到如下镜像:
执行启动镜像命令:
docker run -t -i jdk7/centos /bin/bash
后台进程启动:
docker run -d jdk7/centos /bin/bash
docker run -d -p 5000:8080 jdk7/centos /bin/bash
这条命令是将镜像的8080端口映射到主机的5000端口