# Task software environment

The @union.task decorator provides the following parameters to specify the software environment in which a task runs:

* `container_image`: Can be either a string referencing a specific image on a container repository, or an ImageSpec defining a build. See [ImageSpec](https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/image-spec/page.md) for details.
* `environment`: See [Environment](https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/environment-variables/page.md) for details.

## Subpages

- [Local image building](https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/image-spec/page.md)
  - Project structure
  - requirements.txt
  - imagespec-simple-example.py
  - Install and configure `union` and Docker
  - Set up an image registry
  - Authenticate to the registry
  - Set up your project and domain on Union.ai
  - Understand the requirements
  - Set up a virtual Python environment
  - Run the workflow locally
  - Register the workflow
  - Ensure that the image is publicly accessible
  - Run the workflow on Union.ai
  - Multi-image workflows
- [ImageSpec with ECR](https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/image-spec-with-ecr/page.md)
  - Prerequisites
  - Set up the image repository
  - Authenticate to the registry
  - Register your workflow to Union.ai
- [ImageSpec with GAR](https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/image-spec-with-gar/page.md)
  - Prerequisites
  - Set up the image repository
  - Authenticate to the registry
  - Register your workflow to Union.ai
- [ImageSpec with ACR](https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/image-spec-with-acr/page.md)
  - Authenticate to the registry
  - Register your workflow to Union.ai
- [Environment variables](https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/environment-variables/page.md)

---
**Source**: https://github.com/unionai/unionai-docs/blob/main/content/user-guide/core-concepts/tasks/task-software-environment/_index.md
**HTML**: https://www.union.ai/docs/v1/union/user-guide/core-concepts/tasks/task-software-environment/
