Configuration#

The coiled login command line tool automatically creates and populates the ~/.config/dask/coiled.yaml configuration file for you. This page covers going beyond the default configuration settings for users who require more customization.

Coiled uses Dask’s built in configuration system. For a comprehensive overview on configuration options see the Dask documentation on configuration. Namely, configuration settings can be set:

  • In the configuration file ~/.config/dask/coiled.yaml

  • Using environment variables like DASK_COILED__ACCOUNT="alice"

  • Configured directly in Python code using dask.config.set

Specifying configuration settings#

You can use a YAML file to specify configuration settings (see the Dask documentation configuring with YAML files). The snippet below shows some possible configuration options and their default values:

coiled:
  account: null                      # Default account
  backend-options: null              # Default backend_options
  server: https://cloud.coiled.io    # Default server
  token: ""                          # Default token
  user: ""                           # Default username

Configuration options can also be set using environment variables prefixed with DASK_COILED__. Dask uses all environment variables starting with DASK_ and interprets a double underscore as nested access (see the Dask documentation on configuring with environment variables).

The dask.config.set function can also be used to set configuration values; it accepts a dictionary and will interpret a period as nested access (see the Dask documentation on configuring within Python).

Equivalent ways of setting commonly used configuration values#

YAML Key

Environment variable

dask.config.set

Description

account

DASK_COILED__ACCOUNT

dask.config.set({"coiled.account": <your-account-name>})

The Coiled account you want to use.

token

DASK_COILED__TOKEN

dask.config.set({"coiled.token": <your-token>})

The Coiled token for your personal account.

software

DASK_COILED__SOFTWARE

dask.config.set({"coiled.software": <your-senv-name>})

Name of the software environment to use.

The account option#

If you are part of a teams account, and you know that you will launch clusters mostly in your team account, you can set the account option to point to to your team slug (a human-readable unique identifier). By setting this option, the default behavior of launching clusters or any other service in your account is overwritten and will use the team account instead.

You can pass your team account slug in the coiled login command line tool with the -a or --account flag as follows:

$ coiled login --account team_slug

The account keyword argument is also accepted in most of our API, this keyword argument gives you the flexibility of switching between your team and personal accounts when using the Coiled API.

Note

You don’t need a distinct token to use your team account – please continue to use your personal token

The backend-options option#

There are several backend specific options that you can specify to customize Coiled’s behaviour. For example, if you are using a specific region to keep your assets and you want always to use this region when using Coiled, then you could add it to this configuration file to overwrite Coiled’s default region choice.

Note

Make sure to check if your region is supported in the backends documentation. If your region is not supported you can get in touch with us.