Do not use docker deployment
Java environment configuration
The server is not configured java environment
Ready jdk and tomcat installation package
Extract the apache-tomcat-8.5.35.tar.gz
tar -xf apache-tomcat-8.5.35.tar.gz
Extracting jdk-8u211-linux-x64.tar.gz and moved to the / usr / local / under, rename jdk8
Decompression: tar -xf the JDK-8u211-linux- x64.tar.gz
Mobile:. Music Videos jdk1 8.0_211 / / usr / local / jdk8
Configuring environment variables jdk
vi / etc / profile is written in the rearmost file the following, the first line is the location of your JDK, you need to change, need to change back
export JAVA_HOME=/usr/local/jdk8 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
The environmental variables and verification
source /etc/profile
Start tomcat
Start tomcat is very simple, just unzip and into the bin directory, execute it startup.sh
The default port tomcat 8080 port, access, see the following page configuration is successful
Such is the background to start up tomcat, we can also start in the foreground
[root@WC bin]# ./catalina.sh run
需要加run参数
如果访问不了请检查防火墙
docker启动
在apache和jdk同级的目录下创建dockerfile文件,内容如下
FROM centos:7 ADD jdk-8u211-linux-x64.tar.gz /usr/local RUN mv /usr/local/jdk1.8.0_211 /usr/local/jdk8 ENV JAVA_HOME=/usr/local/jdk8 ENV JRE_HOME=$JAVA_HOME/jre ENV CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH ENV PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH ADD apache-tomcat-8.5.35.tar.gz /usr/local RUN mv /usr/local/apache-tomcat-8.5.35 /usr/local/tomcat EXPOSE 8080 ENTRYPOINT ["/usr/local/tomcat/bin/catalina.sh","run"]
代码解释:
- ADD jdk-8u211-linux-x64.tar.gz /usr/local 将本地的jdk复制到容器内部并解压
- RUN mv /usr/local/jdk1.8.0_211 /usr/local/jdk8 移动并重命名
- 后面的4个env是设置环境变量
- EXPOSE 8080 暴露出8080端口
- ENTRYPOINT ["/usr/local/tomcat/bin/catalina.sh","run"] 启动容器的时候执行,不能后台启动,要不然容器启动后就停止了
[root@WC ~]# docker build -t centos:java .
启动容器:
docker run -itd -p 8081:8080 -v /root/test/ROOT:/usr/local/tomcat/webapps/ROOT centos:java /bin/bash
然后我们访问8081端口就可以访问tomcat服务了