Docker + Tomcat

Pull Docker CentOS7 image.

# docker pull centos:7
7: Pulling from centos
675ac122cafb: Pull complete
a4875ffe6057: Pull complete
c5507be714a7: Pull complete
Digest: sha256:eb3d9226f385fe27cd8d862f9b6aab8760b2d31c1e3c2f7
80aac27ee1c7ac364
Status: Downloaded newer image for centos:7

Run Docker.

# mkdir -p docker/tomcat-container/logs
# docker run -it -d -p 8080:8080 -v /root/docker/tomcat-contai
ner/logs:/opt/apache-tomcat-9.0.12/logs --name tomcat centos:7
29f4ea02b748af6eef6dcd0d5a1395ef4dbfc47f4fa77e8669b850ff0fc411
92
# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CR
EATED             STATUS              PORTS
 NAMES
29f4ea02b748        centos:7            "/bin/bash"         20
 seconds ago      Up 18 seconds       0.0.0.0:8080->8080/tcp
 tomcat

Login to Docker.

# docker exec -it tomcat bash
[root@29f4ea02b748 /]#
[root@29f4ea02b748 /]# cd /root/

Install wget.

[root@29f4ea02b748 ~]# yum install wget

Download OpenJDK 10.0.2.

[root@29f4ea02b748 ~]# wget https://download.java.net/java/GA/
jdk10/10.0.2/19aef61b38124481863b1413dce1855f/13/openjdk-10.0.
2_linux-x64_bin.tar.gz

Download Tomcat 9.0.12.

[root@29f4ea02b748 ~]# wget http://ftp.riken.jp/net/apache/tom
cat/tomcat-9/v9.0.12/bin/apache-tomcat-9.0.12.tar.gz

Install JDK and Tomcat.

[root@29f4ea02b748 ~]# tar zxf openjdk-10.0.2_linux-x64_bin.ta
r.gz
[root@29f4ea02b748 ~]# tar zxf apache-tomcat-9.0.12.tar.gz
[root@29f4ea02b748 ~]# mv jdk-10.0.2 /opt/
[root@29f4ea02b748 ~]# mv apache-tomcat-9.0.12 /opt/
mv: overwrite '/opt/apache-tomcat-9.0.12'? yes^C

Can not remove /opt/apache-tomcat-9.0.12 created at create docker image. Move it.

[root@29f4ea02b748 ~]# cd /opt/
[root@29f4ea02b748 opt]# mv apache-tomcat-9.0.12/ apache-tomcat-9.0.12.1
[root@29f4ea02b748 opt]# cd
[root@29f4ea02b748 ~]# mv apache-tomcat-9.0.12 /opt/

Configure Tomcat and start.

[root@29f4ea02b748 ~]# cd /opt/apache-tomcat-9.0.12/bin/
[root@29f4ea02b748 bin]# echo JAVA_HOME=/opt/jdk-10.0.2 > setenv.sh

[root@29f4ea02b748 bin]# ./catalina.sh run
NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
23-Sep-2018 02:04:57.422 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:        Apache Tomcat/9.0.12
23-Sep-2018 02:04:57.445 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Sep 4 2018 22:13:41 UTC
23-Sep-2018 02:04:57.446 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:         9.0.12.0
23-Sep-2018 02:04:57.447 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
23-Sep-2018 02:04:57.449 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            2.6.32-754.el6.x86_64
23-Sep-2018 02:04:57.451 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
23-Sep-2018 02:04:57.452 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /opt/jdk-10.0.2
23-Sep-2018 02:04:57.453 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           10.0.2+13
23-Sep-2018 02:04:57.453 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            "Oracle Corporation"
23-Sep-2018 02:04:57.454 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /opt/apache-tomcat-9.0.12
23-Sep-2018 02:04:57.454 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /opt/apache-tomcat-9.0.12
23-Sep-2018 02:04:57.469 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
23-Sep-2018 02:04:57.470 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
23-Sep-2018 02:04:57.477 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
23-Sep-2018 02:04:57.478 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/opt/apache-tomcat-9.0.12/conf/logging.properties
23-Sep-2018 02:04:57.479 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
23-Sep-2018 02:04:57.479 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
23-Sep-2018 02:04:57.480 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
23-Sep-2018 02:04:57.482 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
23-Sep-2018 02:04:57.483 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
23-Sep-2018 02:04:57.483 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/opt/apache-tomcat-9.0.12
23-Sep-2018 02:04:57.485 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/opt/apache-tomcat-9.0.12
23-Sep-2018 02:04:57.486 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/opt/apache-tomcat-9.0.12/temp
23-Sep-2018 02:04:57.487 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/usr/java/
packages/lib:/usr/lib64:/lib64:/lib:/usr/lib]
23-Sep-2018 02:04:57.669 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
23-Sep-2018 02:04:57.739 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
23-Sep-2018 02:04:57.766 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
23-Sep-2018 02:04:57.777 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
23-Sep-2018 02:04:57.780 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 2660 ms
23-Sep-2018 02:04:58.083 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
23-Sep-2018 02:04:58.088 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/9.0.12
23-Sep-2018 02:04:58.133 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-9.0.12/webapps/ROOT]
23-Sep-2018 02:04:59.621 WARNING [main] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [143] milliseconds.
23-Sep-2018 02:04:59.702 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-9.0.12/webapps/ROOT] has finished in [1,569] ms
23-Sep-2018 02:04:59.704 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-9.0.12/webapps/docs]
23-Sep-2018 02:04:59.801 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-9.0.12/webapps/docs] has finished in [98] ms
23-Sep-2018 02:04:59.803 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-9.0.12/webapps/manager]
23-Sep-2018 02:04:59.974 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-9.0.12/webapps/manager] has finished in [170] ms
23-Sep-2018 02:04:59.976 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-9.0.12/webapps/host-manager]
23-Sep-2018 02:05:00.107 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-9.0.12/webapps/host-manager] has finished in [131] ms
23-Sep-2018 02:05:00.109 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-9.0.12/webapps/examples]
23-Sep-2018 02:05:01.225 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-9.0.12/webapps/examples] has finished in [1,117] ms
23-Sep-2018 02:05:01.237 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
23-Sep-2018 02:05:01.286 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
23-Sep-2018 02:05:01.306 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 3523 ms

Access Browser on PC. http://192.168.11.8:8080/