agentsclimarketplace

Tomcat application server initialization

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/tomcat-application-server-initialization

Use when when you need to deploy a Java web application packaged in a Tomcat Docker container to a specified HTTP endpoint, and must verify that the container starts successfully, the Tomcat server initializes, and the application becomes accessible at the mapped host port before proceeding with.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill tomcat-application-server-initialization

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

7.2 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it

tomcat-application-server-initialization

License: restricted — no clear open-source license detected for the underlying tool; verify licensing before commercial use or redistribution. <!-- asb-license-banner -->

Summary

Initialize and verify a Tomcat application server instance running a containerized Java web application (MetFrag webapp) by launching the Docker container with appropriate port mapping and waiting for the server to become ready. This skill ensures the Tomcat service on port 8080 is properly exposed to the host and ready to serve HTTP requests.

When to use

When you need to deploy a Java web application packaged in a Tomcat Docker container to a specified HTTP endpoint, and must verify that the container starts successfully, the Tomcat server initializes, and the application becomes accessible at the mapped host port before proceeding with integration tests or production use.

When NOT to use

  • The application is already running in a non-containerized Tomcat instance on the target host—skip Docker launch and verify the existing service directly.
  • You need to build the MetFrag webapp from source code (use Maven build instead: mvn clean install -pl MetFragWeb -am followed by mvn org.codehaus.cargo:cargo-maven3-plugin:run).
  • The target environment does not support Docker or requires deployment to an external Tomcat instance via WAR file transfer.

Inputs

  • Docker image name and tag (e.g., ipbhalle/metfragweb)
  • Host port number for mapping (e.g., 8888)
  • Optional environment variables (JAVA_OPTS, WEBPREFIX)
  • Optional volume mounts (e.g., settings.properties file)

Outputs

  • Running Docker container with Tomcat service listening on mapped host port
  • HTTP endpoint accessible at http://localhost:<host_port>/<app_path>
  • Container startup logs confirming successful initialization
  • HTTP response (200 OK or valid HTML content) from the deployed application

How to apply

Pull the target Docker image (e.g., ipbhalle/metfragweb) from Docker Hub, then run the container with Docker using the -p flag to map the container's internal Tomcat port (8080) to a host port (e.g., 8888). Allow the Tomcat application server time to initialize—this includes unpacking the WAR file, loading servlets, and initializing application resources. Verify initialization by making an HTTP GET request to the exposed endpoint (e.g., http://localhost:8888/MetFragWeb) and confirming a 200 status code or valid webpage content. Document startup logs from the container to confirm successful deployment and capture any configuration warnings or errors.

Related tools

Examples

docker run -it --rm -p 8888:8080 ipbhalle/metfragweb

Evaluation signals

  • Docker container exits with exit code 0 or is actively running (docker ps shows the container in 'Up' state)
  • HTTP GET request to the mapped endpoint (e.g., http://localhost:8888/MetFragWeb) returns HTTP status 200 and valid HTML content
  • Container startup logs show no ERROR or FATAL level messages; logs should include 'Tomcat started' or similar readiness indicators
  • Port mapping is correctly established: docker port <container_id> shows 8080/tcp mapped to 0.0.0.0:<host_port>
  • Application is reachable and responsive within a reasonable timeout (typically 30–60 seconds after container start) to confirm full initialization

Limitations

  • Initialization time depends on image size, Tomcat startup overhead, and application resource initialization; no deterministic startup guarantee without polling or log monitoring.
  • Environment variables (JAVA_OPTS, WEBPREFIX) and volume-mounted configuration files (settings.properties) must be correctly formatted; invalid settings may cause Tomcat to start but the application to fail silently.
  • The skill does not address persistence of data or configuration across container restarts; use Docker volumes or external databases for persistent state.
  • Network connectivity issues or port conflicts (e.g., host port 8888 already in use) will prevent successful deployment; prerequisite host environment validation is required.

Evidence

  • [readme] This container packages the MetFrag webapp and some text databases based on the latest official tomcat docker container.: "This container packages the MetFrag (https://github.com/ipb-halle/MetFragRelaunched) webapp and some text databases based on the latest official tomcat docker container"
  • [readme] Port mapping configuration to expose Tomcat service.: "docker run -it --rm -p 8888:8080 ipbhalle/metfragweb"
  • [readme] Environment variable and settings file configuration options.: "environment variable JAVA_OPTS="-Xmx?g -Xms?g" to adjust jvm memory; environment variable WEBPREFIX to adjust the web app name; automatic use of a metfrag settings file if provided at"
  • [other] Endpoint accessibility verification method.: "Verify HTTP connectivity by making a GET request to the exposed endpoint and confirming a 200 response or valid webpage content"
  • [readme] Alternative invocation with custom configuration.: "docker run -it --rm -e JAVA_OPTS="-Xmx4g -Xms4g" -e WEBPREFIX=mymetfrag -v $(pwd)/settings.properties:/resources/settings.properties -p 8888:8080 ipbhalle/metfragweb"

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.