1. A computer-implemented method, comprising: under the control of one or more computer systems that execute instructions, receiving a task definition, the task definition indicating at least a location from which one or more software images can be obtained and information usable to determine an amount of resources to allocate to one or more software containers for the one or more software images, each software container of the one or more software containers being an isolated user space instance that runs in isolation from other software containers running on a virtual machine instance; determining a set of virtual machine instances in which to launch the one or more software containers; and causing the one or more software images to be obtained from the location indicated by the task definition and launched as the one or more of software containers within the set of virtual machine instances.