Details
-
Feature Request
-
Resolution: Done
-
Minor
-
None
-
None
-
None
-
None
-
User Experience
Description
This is a placeholder JIRA for a possible implementation/artifact. It has neither any formal planning nor priority set and it might not happen at all.
Standalone servlet container server
It would be convenient for those who prefer Undertow servlet container over Tomcat servlet container to be able to download and run Undertow packaged with "batteries included", to create similar experience to unpacking and deploying to Tomcat or Wildfly. At the time of writing of this JIRA, one has to either use Undertow with Wildfly or as an embedded container in one's application or a third party web app framework.
Layout
A simple sketch to give a rough idea what the aforementioned paragraph actually suggests:
├── bin │ ├── bootstrap.jar │ ├── undertow.bat │ └── undertow.sh ├── conf │ ├── undertow.properties │ ├── context.xml │ ├── logging.properties │ ├── server.xml │ └── web.xml ├── lib │ ├── annotations-api.jar │ ├── undertow-websockets-jsr.jar │ ├── undertow-core.jar ... │ ├── undertow-servlet.jar │ └── undertow-parser-generator.jar ├── LICENSE ├── logs ├── temp ├── webapps │ ├── docs │ │ └── index.html │ ├── examples │ │ └── index.html │ └── ROOT │ ├── jboss-logo.svg │ ├── undertow-logo.svg │ ├── favicon.ico │ ├── index.jsp │ ├── undertow.css │ └── WEB-INF │ └── web.xml └── work └── undertow └── localhost ├── docs ├── examples └── ROOT
Containerized
The server should be properly containerized so as it is possible to set all its pertinent configuration properties as env variables, e.g. not unlike what is done here: jws-3-tomcat-8-mod_cluster. The point is to be able to feed BASE64 encoded certs and keys to the container alongside with various key attributes, just like with this Tomcat example:
docker run --net=host \ -e 'TOMCAT_KEYSTORE_PASS=tomcat' \ -e 'TOMCAT_JVM_ROUTE=worker-1' \ -e 'TOMCAT_ENABLE_MOD_CLUSTER=true' \ -e 'TOMCAT_MOD_CLUSTER_ADVERTISE=true' \ -e 'TOMCAT_USERNAME=tomcat' \ -e 'TOMCAT_PASSWORD=tomcat' \ -e 'TOMCAT_NIC=enp0s31f6' \ -e 'TOMCAT_ADDR_PREFIX=10' \ -e 'TOMCAT_MOD_CLUSTER_ADVERTISE_PORT=23364' \ -e 'TOMCAT_MOD_CLUSTER_ADVERTISE_GROUPADDRESS=224.0.1.105' \ -e 'TOMCAT_ENABLE_HTTP_CONNECTOR=false' \ -e 'TOMCAT_ENABLE_AJP_CONNECTOR=false' \ -e 'TOMCAT_MOD_CLUSTER_SSL=true' \ -e 'TOMCAT_ENABLE_HTTPS_CONNECTOR=true' \ -e 'TOMCAT_HTTPS_CONNECTOR_CLIENT_AUTH=true' \ -e 'TOMCAT_CA_CRT_BASE64=LS0tLS...many...more...chars...EUtLS0tLQo=' \ -e 'TOMCAT_CLIENT_CRT_BASE64=Q2VydGlmaWNhd...many...more...chars...LS0tLS0K' \ -e 'TOMCAT_CLIENT_KEY_BASE64=LS0tLS...many..more...chars...ktLS0tLQo=' \ -e 'TOMCAT_SERVER_CRT_BASE64=Q2VydGlmaWN...many...more...chars...LRVktLS0tLQo=' \ -d -i --name jws-tomcat-8-mod_cluster your-docker-registry.example.com/karm/jws-tomcat-8-mod_cluster:3.1.1
Attachments
Issue Links
- blocks
-
MODCLUSTER-658 Implement mod_cluster worker for Undertow embedded and standalone use case
- Closed