这事dockerfile 里面 add 命令需要的资源
wget https://download.java.net/openjdk/jdk8u40/ri/openjdk-8u40-b25-linux-x64-10_feb_2015.tar.gz
wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.32/bin/apache-tomcat-8.5.32.tar.gz
wget http://download.redis.io/releases/redis-4.0.0.tar.gz
# bash images
FROM centos
#
MAINTAINER fwq
# 基础环境依赖
RUN yum install -y gcc tcl && yum imstall -y make
# 添加jdk
ADD openjdk-8u40-b25-linux-x64-10_feb_2015.tar.gz /home/centos/docker/db/
# 添加tomcat
ADD apache-tomcat-8.5.32.tar.gz /home/centos/docker/db/
# 添加redis
ADD redis-4.0.0.tar.gz /home/centos/docker/db/
# 。。。
RUN /bin/sh -c 'cd redis-4.0.0/ && make && cd src && mkdir /home/centos/docker/db/usr && cp redis-server /home/centos/docker/db/usr/redis-server && cp /home/centos/docker/db/redis-4.0.0/redis.conf /home/centos/docker/db/usr/redis.conf'
# 设置环境变量
ENV JAVA_HOME /home/centos/docker/db/java-se-8u40-ri
ENV JRE_HOME /home/centos/docker/db/java-se-8u40-ri/jre
ENV CATALINA_HOME /home/centos/docker/db/apache-tomcat-8.5.32
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
# 暴露端口
EXPOSE 8080
EXPOSE 6379
EXPOSE 8000
EXPOSE 80
# 启动命令
CMD ["/home/centos/docker/db/apache-tomcat-8.5.32/bin/catalina.sh","run"]
CMD ["/home/centos/docker/db/usr/redis-server","run"]
Dockerfile 内容如上
可以正常创建镜像 和容器 ENV 设置的环境变量没有起作用 不知道哪里错了。
可以将环境变量放到 /etc/profile 文件里面就可以生效了