Skip to content

Instantly share code, notes, and snippets.

@adamkovesdi
Created February 7, 2018 18:18
Show Gist options
  • Save adamkovesdi/ea6954a385c5d3671cd3b227635f69a9 to your computer and use it in GitHub Desktop.
Save adamkovesdi/ea6954a385c5d3671cd3b227635f69a9 to your computer and use it in GitHub Desktop.
Tomcat in docker

Tomcat in docker

This is a cheat sheet for running Tomcat and Java web applications containerized

Docker commands

Run a tomcat container serving this directory

docker run -it --rm --name tomcat -p 8888:8080 -v "$(pwd)":/usr/local/tomcat/webapps tomcat

Troubleshoot container with bash

docker exec -it tomcat bash

Run Tomcat manager

docker run -it --rm --name tomcat -p 8888:8080 -v "$(pwd)"/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml -v "$(pwd)"/context.xml:/usr/local/tomcat/webapps/manager/META-INF/context.xml tomcat

tomcat-users.xml

<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">
<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager-gui"/>
</tomcat-users>

context.xml

<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="false" privileged="true" >
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment