In short, a container provides an environment for software to run in.
In example, a JSP container allows for the execution of Java Server Pages. A J2EE container provides the environment that Enterprise Java Beans (EJB) need.