Skip to main content

Azure

When running pipelines on Azure, you might encounter the following issues.

Batch compute environments​

Tasks fail with ContainerInvalidSettings​

Tasks fail without an exit code, and Azure Batch reports ContainerInvalidSettings with the message "At least one value of specified task container settings is invalid". This issue occurs when the Batch node agent can't create the task container within its fixed 5-minute limit. It usually happens when many container images unpack at the same time on a slow OS disk.

To resolve this in a Batch Forge compute environment, select a VM size with a local temp disk of at least 128 GB. Leave Boot disk size empty, or set it no larger than the temp disk. Then create the compute environment again, so that its pools store container data on the temp disk. See VM size considerations.

Manual pools don't get this setup. To resolve this in a manual pool, move the Docker and containerd data directories to the temp disk in the pool start task.

Use separate Batch pools for head and compute nodes​

warning

After September 30, 2025 low-priority VMs are only available in user subscription pool allocation mode Batch accounts. See the Microsoft migration guide.

Batch Forge creates separate head and worker pools with dedicated (on-demand) VMs by default. To save costs by running compute tasks on low-priority VMs, create the pools manually:

  1. Create two Batch pools in Azure:
note

Both pools must meet the requirements of a pre-existing pool, as detailed in the Nextflow documentation.

  1. Create a manual Azure Batch compute environment in Seqera Platform.
  2. In Compute pool name, specify your dedicated Batch pool.
  3. Specify the low-priority pool with the process.queue directive in your nextflow.config file, either through the launch form or your pipeline repository.

Azure Kubernetes Service (AKS)​

.../.git/HEAD.lock: Operation not supported​

This error occurs when your Nextflow pod uses an Azure Files (SMB) persistent volume for storage. The jgit library that Nextflow uses attempts a filesystem link operation that Azure Files (SMB) doesn't support.

To resolve, add the following to your pipeline's Pre-run script field:

cat <<EOT > ~/.gitconfig
[core]
supportsatomicfilecreation = true
EOT

SSL​

SSL CA certificate errors​

This can occur when a tool or library in your task container requires SSL certificates to validate an external data source. To resolve, mount the SSL certificates into the container.

Connections using insecure transport are prohibited while --require_secure_transport=ON​

This Azure SQL database error occurs because Azure's default MySQL configuration enforces SSL connections between the server and client, as described in SSL/TLS connectivity in Azure Database for MySQL.

To resolve, append useSSL=true&enabledSslProtocolSuites=TLSv1.2&trustServerCertificate=true to your TOWER_DB_URL connection string:

TOWER_DB_URL: jdbc:mysql://mysql:3306/tower?permitMysqlScheme=true/azuredatabase.com/tower?serverTimezone=UTC&useSSL=true&enabledSslProtocolSuites=TLSv1.2&trustServerCertificate=true