FROM pvt:base # Tomcat manager password ARG pass RUN if [ -z "$pass" ]; then echo "Missing pass argument"; exit 1; fi # To be removed at end RUN apt-get update RUN apt-get install -y xmlstarlet ## Add manager user RUN xmlstarlet ed -L \ -s "/tomcat-users" -t elem -n "new-user" -v "" \ -i "//new-user" -t attr -n "username" -v "tomcat" \ -i "//new-user" -t attr -n "password" -v "$pass" \ -i "//new-user" -t attr -n "roles" -v "manager-script,manager-gui" \ -r "//new-user" -v "user" \ "$BASE"/conf/tomcat-users.xml # Cleanup RUN apt-get autoremove -y --purge xmlstarlet EXPOSE 8009 8080 CMD ["catalina.sh", "run"]