The “containers” API is the recommended way to submit compute work to Arvados. It supersedes the “jobs” API, which is deprecated.
Containers cannot reuse jobs (but can reuse other containers)
Uses the service crunch-dispatch-slurm instead of crunch-dispatch.rb
Non-CWL Arvados “pipeline templates” are not supported with containers. Pipeline templates should be rewritten in CWL and registered as “Workflows”.
The containers APIs is incompatible with the jobs API, code which integrates with the “jobs” API must be updated to work with containers
Containers have network access disabled by default
The keep mount only exposes collections which are explicitly listed as inputs
Run your workflows using arvados-cwl-runner --api=containers
(only necessary if both the jobs and containers APIs are enabled, if the jobs API is disabled, it will use the containers API automatically)
Register your workflows so they can be run from workbench using arvados-cwl-runner --api=containers --create-workflow
Read Migrating running CWL on jobs API to containers API
Use arv:APIRequirement: {}
in the requirements
section of your CWL file to enable network access for the container (see Arvados CWL Extensions)
For examples on how to manage container requests with the Python SDK, see Python cookbook
The content of this documentation is licensed under the
Creative
Commons Attribution-Share Alike 3.0 United States licence.
Code samples in this documentation are licensed under the
Apache License, Version 2.0.