When running REMReM Generate in a Docker container there's little point in using a Tomcat image (tomcat:8.0-jre8) and running the war file as the sole application in its Tomcat instance. There are also a few concrete problems in such a setup:
Because the process inside the container with pid 1 won't respond to SIGTERM signals, container shutdowns will (by default) take ten seconds and the processes will be stopped with SIGKILL, leaving no opportunity to clean anything up.
Tomcat and the application each have their own logging configurations, so introducing a common log format or rotation means extra work.
By switching to fabric8/java-centos-openjdk8-jre we run the war file as a standalone application with the Tomcat that's built into Spring Boot.
This commit introduces a backwards incompatible change, namely that the directory where the application looks for application.properties changes.
While updating the Docker documentation we also drop references to the --expose flag since it's superfluous given the "EXPOSE 8080" instruction in the dockerfile.
Benefits
The problems described above are addressed.
Possible Drawbacks
Sites that prefer to run Java wars via Tomcat won't be able to use this image anymore, but they can just run a plain Tomcat image and place the war file in the right directory.
Sign-off
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or
(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or
(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.
(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.
Applicable Issues
142
Description of the Change
When running REMReM Generate in a Docker container there's little point in using a Tomcat image (tomcat:8.0-jre8) and running the war file as the sole application in its Tomcat instance. There are also a few concrete problems in such a setup:
By switching to fabric8/java-centos-openjdk8-jre we run the war file as a standalone application with the Tomcat that's built into Spring Boot.
This commit introduces a backwards incompatible change, namely that the directory where the application looks for application.properties changes.
While updating the Docker documentation we also drop references to the
--expose
flag since it's superfluous given the "EXPOSE 8080" instruction in the dockerfile.Benefits
The problems described above are addressed.
Possible Drawbacks
Sites that prefer to run Java wars via Tomcat won't be able to use this image anymore, but they can just run a plain Tomcat image and place the war file in the right directory.
Sign-off
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or
(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or
(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.
(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.
Signed-off-by: Magnus Bäck \magnus.back@axis.com\