# WildFly — Modern Jakarta EE Application Server > WildFly is a flexible, lightweight, open-source Java application server that implements the full Jakarta EE platform, managed by Red Hat and optimized for cloud-native deployments. ## Install Save as a script file and run: # WildFly — Modern Jakarta EE Application Server ## Quick Use ```bash # Download and start WildFly wget https://github.com/wildfly/wildfly/releases/download/31.0.0.Final/wildfly-31.0.0.Final.zip unzip wildfly-31.0.0.Final.zip cd wildfly-31.0.0.Final ./bin/standalone.sh # Deploy a WAR by copying it into standalone/deployments/ ``` ## Introduction WildFly (formerly JBoss AS) is a production-grade Java application server that implements the Jakarta EE specification. It provides a complete runtime for enterprise applications including CDI, JPA, JAX-RS, EJB, JMS, and more. WildFly is designed for fast startup, low memory use, and modular configuration, making it suitable for both traditional data centers and container-based deployments. ## What WildFly Does - Implements the full Jakarta EE 10 platform including web, persistence, messaging, and batch APIs - Uses a modular class-loading system that loads only the subsystems your application needs - Provides a CLI and web-based admin console for runtime management and configuration - Supports domain mode for managing clusters of servers from a central controller - Offers a Bootable JAR option to package the server and application as a single executable JAR ## Architecture Overview WildFly is built on a modular service container that organizes functionality into subsystems. Each subsystem — Undertow for HTTP, Infinispan for caching, Hibernate for JPA, ActiveMQ Artemis for messaging — loads independently. The JBoss Modules class-loading system isolates subsystem dependencies, preventing classpath conflicts. Configuration is stored in XML files (standalone.xml or domain.xml) and can be modified at runtime through the management API. Galleon provisioning lets you trim the server to include only the subsystems your application uses. ## Self-Hosting & Configuration - Download the distribution from the WildFly website or pull the `quay.io/wildfly/wildfly` container image - Run `standalone.sh` for single-server mode or `domain.sh` for multi-server management - Deploy applications by placing WAR/EAR files in the `deployments/` directory or using the CLI - Configure datasources, JMS queues, and security realms through `standalone.xml` or the admin console - Use Galleon to create a trimmed server distribution containing only the required feature packs ## Key Features - Modular architecture loads only what you need, reducing memory and startup time - MicroProfile support enables cloud-native patterns like health checks, metrics, and config - Bootable JAR packaging bundles server and app into a single deployment artifact - Domain mode provides centralized management for server clusters - Active community with predictable quarterly releases ## Comparison with Similar Tools - **Tomcat** — Servlet-only container; WildFly provides the full Jakarta EE platform - **Payara** — GlassFish fork with commercial support; WildFly has a larger open-source community - **Open Liberty** — IBM's Jakarta EE runtime with similar modularity; WildFly uses JBoss Modules instead of OSGi - **Quarkus** — Supersonic Kubernetes-native framework; WildFly is a traditional app server that can also run in containers - **Spring Boot** — Opinionated framework with embedded server; WildFly deploys standard Jakarta EE applications ## FAQ **Q: Is WildFly free to use in production?** A: Yes. WildFly is fully open source under the LGPL. Red Hat offers commercial support as JBoss EAP. **Q: How does WildFly compare to Quarkus?** A: Quarkus is designed for fast startup and low memory in containers. WildFly provides the full Jakarta EE platform and is better suited for applications that rely on the complete spec. **Q: Can WildFly run in Docker or Kubernetes?** A: Yes. Official container images are available, and the Bootable JAR option simplifies containerized deployments. **Q: Does WildFly support clustering?** A: Yes. WildFly supports HA clustering with session replication via Infinispan and load balancing via mod_cluster or Undertow's reverse proxy. ## Sources - https://github.com/wildfly/wildfly - https://www.wildfly.org/documentation/ --- Source: https://tokrepo.com/en/workflows/asset-4259f48c Author: Script Depot