# Codehaus Cargo : Container

Created by Former user, last modified by S. Ali Tokmen on Jun 14, 2023

### Definition

A top level interface wrapping a real physical container

### Explanation

A container is the base concept in Cargo. It represents an existing container runtime. A container is composed of a Configuration. There are 2 types of containers:

- Local Container
- Remote Container

### Support Matrix

Java | Ant | Maven 3
--- | --- | ---

### Container features

- Local Container — A container executing on the machine where Cargo executes
  - Container Start — Start a container that is not already running
  - Container Stop — Stop a running container
  - Container Timeout — Timeout after which the container start/stop is deemed failed
  - Installed Container — A container installed on the machine where Cargo executes.
    - Passing system properties — How to pass system properties that will be available to the container while executing
    - Installer — Installs a container
  - Embedded Container — A container executing in the same JVM where Cargo is running
  - Container Classpath — How to configure the executing container's classpath
    - Application Classpath — How to configure the classpath of the application without changing the container's own classpath
    - JBoss 7.x onwards and WildFly container classpath
- Container Instantiation — Create a container instance
- Remote Container — A container that is already running on some machine (local or remote)

### Container support

The below list shows the supported containers and extensions that are implemented for each container, as well as the the version of the associated Codehaus Cargo module where the feature was first made available.

Click on a container's name to see a detailed list of features it supports.

Container | Java API (version) | Ant tasks (version) | Maven 3 plugin (version)
--- | --- | --- | ---
Geronimo 1.x | 0.8 | 0.8 | 1.9.0
Geronimo 2.x | 1.0.4 | 1.0.4 | 1.9.0
Geronimo 3.x | 1.2.4 | 1.2.4 | 1.9.0
GlassFish 2.x | 1.0.1 | 1.0.1 | 1.9.0
GlassFish 3.x | 1.0.1 | 1.0.1 | 1.9.0
GlassFish 4.x | 1.4.0 | 1.4.0 | 1.9.0
GlassFish 5.x | 1.6.6 | 1.6.6 | 1.9.0
GlassFish 6.x | 1.8.3 | 1.8.3 | 1.9.0
GlassFish 7.x | 1.9.14 | 1.9.14 | 1.9.14
GlassFish 8.x | 1.10.12 | 1.10.12 | 1.10.12
JBoss 3.x | 0.7 | 0.7 | 1.9.0
JBoss 4.x | 0.7 | 0.7 | 1.9.0
JBoss 4.2.x | 1.0 | 1.0 | 1.9.0
JBoss 5.x | 1.0 | 1.0 | 1.9.0
JBoss 5.1.x | 1.0.1 | 1.0.1 | 1.9.0
JBoss 6.x | 1.0.1 | 1.0.1 | 1.9.0
JBoss 6.1.x | 1.1.3 | 1.1.3 | 1.9.0
JBoss 7.x | 1.1.2 | 1.1.2 | 1.9.0
JBoss 7.1.x | 1.1.4 | 1.1.4 | 1.9.0
JBoss 7.2.x | 1.4.3 | 1.4.3 | 1.9.0
JBoss 7.3.x | 1.4.6 | 1.4.6 | 1.9.0
JBoss 7.4.x | 1.4.9 | 1.4.9 | 1.9.0
JBoss 7.5.x | 1.4.17 | 1.4.17 | 1.9.0
Jetty 5.x | 0.8 | 1.0 | 1.9.0
Jetty 6.x | 0.8 | 1.0 | 1.9.0
Jetty 7.x | 1.0.1 | 1.0.1 | 1.9.0
Jetty 8.x | 1.1.3 | 1.1.3 | 1.9.0
Jetty 9.x | 1.3.0 | 1.3.0 | 1.9.0
Jetty 10.x | 1.8.3 | 1.8.3 | 1.9.0
Jetty 11.x | 1.8.3 | 1.8.3 | 1.9.0
Jetty 12.x | 1.10.9 | 1.10.9 | 1.10.9
jo! 1.x | 0.5 | 0.5 | 1.9.0
JOnAS 4.x | 1.0 | 1.0 | 1.9.0
JOnAS 5.x | 1.0 | 1.0 | 1.9.0
JRun 4.x | 1.0 | 1.0 | 1.9.0
OC4J 9.x | 0.3 | 0.3 | 1.9.0
OC4J 10.x | 1.0 | 1.0 | 1.9.0
Payara | 1.7.8 | 1.7.8 | 1.9.0
Resin 3.x | 0.1 | 0.1 | 1.9.0
Resin 3.1.x | 1.2.0 | 1.2.0 | 1.9.0
Resin 4.x | 1.4.0 | 1.4.0 | 1.9.0
Tomcat 4.x | 0.1 | 0.1 | 1.9.0
Tomcat 5.x | 0.1 | 0.1 | 1.9.0
Tomcat 6.x | 1.0 | 1.0 | 1.9.0
Tomcat 7.x | 1.0.2 | 1.0.2 | 1.9.0
Tomcat 8.x | 1.4.4 | 1.4.4 | 1.9.0
Tomcat 9.x | 1.5.1 | 1.5.1 | 1.9.0
Tomcat 10.x | 1.7.12 | 1.7.12 | 1.9.0
Tomcat 11.x | 1.10.6 | 1.10.6 | 1.10.6
TomEE 1.x | 1.4.11 | 1.4.11 | 1.9.0
TomEE 7.x | 1.6.0 | 1.6.0 | 1.9.0
TomEE 8.x | 1.7.1 | 1.7.1 | 1.9.0
TomEE 9.x | 1.8.0 | 1.8.0 | 1.9.0
TomEE 10.x | 1.10.14 | 1.10.14 | 1.10.14
WebLogic 8.x | 0.3 | 0.3 | 1.9.0
WebLogic 9.x | 1.0 | 1.0 | 1.9.0
WebLogic 10.x | 1.0 | 1.0 | 1.9.0
WebLogic 10.3.x | 1.0 | 1.0 | 1.9.0
WebLogic 12.x | 1.2.4 | 1.2.4 | 1.9.0
WebLogic 12.1.x | 1.4.6 | 1.4.6 | 1.9.0
WebLogic 12.2.x | 1.4.18 | 1.4.18 | 1.9.0
WebLogic 14.x | 1.7.12 | 1.7.12 | 1.9.0
WebSphere 8.5.x | 1.3.0 | 1.3.0 | 1.9.0
WebSphere 9.x | 1.6.4 | 1.6.4 | 1.9.0
WebSphere Liberty | 1.5.0 | 1.5.0 | 1.9.0
WildFly 8.x | 1.4.2 | 1.4.2 | 1.9.0
WildFly 9.x | 1.4.15 | 1.4.15 | 1.9.0
WildFly 10.x | 1.4.18 | 1.4.18 | 1.9.0
WildFly 11.x | 1.6.3 | 1.6.3 | 1.9.0
WildFly 12.x | 1.6.7 | 1.6.7 | 1.9.0
WildFly 13.x | 1.6.9 | 1.6.9 | 1.9.0
WildFly 14.x | 1.6.11 | 1.6.11 | 1.9.0
WildFly 15.x | 1.7.2 | 1.7.2 | 1.9.0
WildFly 16.x | 1.7.3 | 1.7.3 | 1.9.0
WildFly 17.x | 1.7.7 | 1.7.7 | 1.9.0
WildFly 18.x | 1.7.8 | 1.7.8 | 1.9.0
WildFly 19.x | 1.7.11 | 1.7.11 | 1.9.0
WildFly 20.x | 1.7.14 | 1.7.14 | 1.9.0
WildFly 21.x | 1.8.3 | 1.8.3 | 1.9.0
WildFly 22.x | 1.8.3 | 1.8.3 | 1.9.0
WildFly 23.x | 1.9.3 | 1.9.3 | 1.9.3
WildFly 24.x | 1.9.6 | 1.9.6 | 1.9.6
WildFly 25.x | 1.9.8 | 1.9.8 | 1.9.8
WildFly 26.x | 1.9.9 | 1.9.9 | 1.9.9
WildFly 27.x | 1.9.14 | 1.9.14 | 1.9.14
WildFly 28.x | 1.10.7 | 1.10.7 | 1.10.7
WildFly 29.x | 1.10.9 | 1.10.9 | 1.10.9
WildFly 30.x | 1.10.10 | 1.10.10 | 1.10.10
WildFly 31.x | 1.10.12 | 1.10.12 | 1.10.12
WildFly 32.x | 1.10.13 | 1.10.13 | 1.10.13
WildFly 33.x | 1.10.15 | 1.10.15 | 1.10.15
WildFly 34.x | 1.10.16 | 1.10.16 | 1.10.16
WildFly 35.x | 1.10.16 | 1.10.16 | 1.10.16
WildFly 36.x | 1.10.19 | 1.10.19 | 1.10.19
WildFly 37.x | 1.10.21 | 1.10.21 | 1.10.21
WildFly 38.x | 1.10.23 | 1.10.23 | 1.10.23
WildFly Swarm | 1.6.5 | 1.6.5 | 1.9.0

Some containers are automatically tested by the Continous Integration system every time there is a code change. For these the containers, the associated page also shows which version is used for these automated tests.