A method implemented by one or more host systems and by a data processing system for causing execution of instances (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) of a container image on the one or more host systems, wherein each instance of the container image includes a first application with a plurality of modules (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322), and wherein the instances (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) are configured to execute a given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) in accordance with a determined number of parallel executions of that given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322), with the method including: accessing the container image that includes the first application and a second application, wherein the second application causes a communication between the data processing system and a host system executing an instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) of the container image; determining, by the data processing system, the number of parallel executions of the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) of the first application; for the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322), generating one or more instances (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) of the container image in accordance with the number of parallel executions determined, with each instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) including the first and second applications; and for each instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376), configuring that instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) to execute the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) of the first application; causing each of the one or more configured instances to execute on one or more of the host systems; wherein, for at least one of the one or more configured instances, the data processing system causes, by the second application of that configured instance, communication between the data processing system and the one or more of the host systems executing that configured instance, wherein the communication between the data processing system and the one or more of the host systems executing that configured instance includes monitor data, wherein the given module, when executed, transmits the monitor data to the second application, wherein the second application, when executed, passes the monitor data to the data processing system, wherein the monitor data is configured to be used by the data processing system to track when the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) has completed execution for the data processing system to instruct another module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) of the first application to execute. accessing the container image that includes the first application and a second application, wherein the second application causes a communication between the data processing system and a host system executing an instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) of the container image; determining, by the data processing system, the number of parallel executions of the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) of the first application; for the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322), generating one or more instances (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) of the container image in accordance with the number of parallel executions determined, with each instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) including the first and second applications; and for each instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376), configuring that instance (104, 105, 108, 122a-c, 124a, 124b, 126a-c, 216, 218, 220-226, 324, 326, 370-376) to execute the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) of the first application; causing each of the one or more configured instances to execute on one or more of the host systems; wherein, for at least one of the one or more configured instances, the data processing system causes, by the second application of that configured instance, communication between the data processing system and the one or more of the host systems executing that configured instance, wherein the communication between the data processing system and the one or more of the host systems executing that configured instance includes monitor data, wherein the given module, when executed, transmits the monitor data to the second application, wherein the second application, when executed, passes the monitor data to the data processing system, wherein the monitor data is configured to be used by the data processing system to track when the given module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) has completed execution for the data processing system to instruct another module (130a-c, 132a-c, 134a-c, 164a-c, 174, 174a-c, 178a-c, 322) of the first application to execute.