Skip to content

Environments

Louie Larson edited this page Jul 6, 2022 · 23 revisions

Creating an environment

Create a new directory for your environment with these contents:

my_env/               # Name should match environment name
├── asset.yaml        # Asset config file
├── environment.yaml  # Environment config file
├── spec.yaml         # Spec file for use with Azure CLI
└── context/          # Docker build context (may contain additional files)
    └── Dockerfile    # Dockerfile

asset.yaml

The asset config file provides basic configuration that is common to all types of assets.

name: my_env                    # Asset name. If omitted, will be read from spec's name property
version: auto                   # Asset version. If omitted, will be read from spec's version property. "auto" means automatic 1-up versioning.
type: environment               # Asset type. Must be code, component, environment, or model.
spec: spec.yaml                 # Spec file, relative to asset config file.
extra_config: environment.yaml  # Environment config file, relative to asset config file.

environment.yaml

image:
  name: azureml/curated/my_env
  os: linux
  context:
    dir: context
    dockerfile: Dockerfile
    template_files:
    - Dockerfile
  publish:
    location: mcr
    visibility: public

spec.yaml

$schema: https://azuremlschemas.azureedge.net/latest/environment.schema.json

description: >-
  An environment for deep learning with PyTorch containing the Azure ML SDK and additional python packages.

name: "{{asset.name}}"
version: "{{asset.version}}"

build:
  path: "{{asset.repo.url}}#{{asset.repo.commit_hash}}:{{asset.repo.build_context.path}}"
  dockerfile_path: "{{image.dockerfile.path}}"

os_type: linux

tags:
  PyTorch: "1.11"
  GPU: Cuda11
  OS: Ubuntu20.04
  Training: ""
  Preview: ""

Releasing an environment

Clone this wiki locally