4.1 KiB
Batch Shipyard
Batch Shipyard is a tool to help provision and execute batch-style Docker workloads on Azure Batch compute pools. No experience with the Azure Batch SDK is needed; run your Dockerized tasks with easy-to-understand configuration files!
Major Features
- Automated Docker Host Engine installation on compute nodes
- Automated deployment of required Docker images to compute nodes
- Accelerated Docker image deployment at scale to compute pools consisting of a large number of VMs via private peer-to-peer distribution of Docker images among the compute nodes
- Automated Docker Private Registry instance creation on compute nodes with Docker images backed to Azure Storage if specified
- Automated Azure File Docker Volume Driver installation and share setup for SMB/CIFS backed to Azure Storage if specified
- Seamless integration with Azure Batch job, task and file concepts along with full pass-through of the Azure Batch API to containers executed on compute nodes
- Support for task dependencies allowing complex processing pipelines and graphs with Docker containers
- Support for multi-instance tasks to accomodate Dockerized MPI applications on compute pools
- Transparent assist for running Docker containers utilizing Infiniband/RDMA for MPI on HPC low-latency Azure VM instances (i.e., STANDARD_A8 and STANDARD_A9)
- Automatic set up of SSH tunneling to Docker Hosts on compute nodes if specified
Installation
Simply clone the repository:
git clone https://github.com/Azure/batch-shipyard.git
or download the latest release.
Requirements
The Batch Shipyard tool is written in Python. The client script is compatible
with Python 2.7 or 3.3+. You will also need to install the
Azure Batch and
Azure Storage python packages.
Installation can be performed using the requirements.txt
file via the command pip install --user -r requirements.txt
(or via pip3
for python3).
Batch Shipyard Compute Node OS Support
Batch Shipyard is currently only compatible with Linux Batch Compute Pools configured via VirtualMachineConfiguration. Please see the list of Azure Batch supported Marketplace Linux VMs for use with Batch Shipyard.
Documentation
Please refer to this guide for a complete primer on concepts and usage.
Please visit the recipes directory for different sample Docker workloads using Azure Batch and Batch Shipyard after you have completed the primer.
ChangeLog
See the CHANGELOG.md file.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.