Let us learn how to configure a self-hosted agent using Docker in Azure DevOps pipelines.
What is an Agent?
An agent is computing infrastructure with installed agent software that runs one job at a time.To build your code or deploy your software using Azure Pipelines, you need at least one agent. As you add more code and people, you'll eventually need more.
When your pipeline runs, the system begins one or more jobs.
In Azure pipelines, there are two types of build agents:
- Microsoft-hosted agents - This is a service totally managed by Microsoft and it's cleared on every execution of the pipeline (on each pipeline execution, you have a fresh new environment).
- Self-hosted agents - This is a service that you can to set up and manage by yourself. This can be a custom virtual machine on Azure or a custom on-premise machine inside your infrastructure. In a self-hosted agent, you can install all the software you need for your builds, and this is persisted on every pipeline execution. A self-hosted agent can be on Windows, Linux, macOS, or in a Docker container.
You can set up a self-hosted agent in Azure Pipelines to run inside a Windows Server Core (for Windows hosts), or Ubuntu container (for Linux hosts) with Docker. We will learn in this article on how to host Ubuntu Docker container on Linux machines.
- Microsoft account setup
- Azure account and subscription setup
- Create a VM(Ubuntu 20.0.4) in Azure Cloud
- Create Personal Access Token in Azure DevOps
- Dockerfile created for docker build agent, please refer this repo
that's it, docker agent is successfully started.
This confirms that Build agent is successfully configured in Azure DevOps and is available to run builds.