Microsoft tarafından barındırılan aracılarMicrosoft-hosted agents

Azure PipelinesAzure Pipelines

Microsoft tarafından barındırılan aracılar yalnızca bulutta barındırılan Azure DevOps Services ile kullanılabilir.Microsoft-hosted agents are only available with Azure DevOps Services, which is hosted in the cloud. Şirket içi TFS veya Azure DevOps Server ile Microsoft tarafından barındırılan aracıları veya Azure Pipelines aracı havuzunu kullanamazsınız.You cannot use Microsoft-hosted agents or the Azure Pipelines agent pool with on-premises TFS or Azure DevOps Server. Bu şirket içi sürümlerle, kendi kendine barındırılan aracılarıkullanmanız gerekir.With these on-premises versions, you must use self-hosted agents.

Önemli

::: Image Type = "content" Source = "/Azure/DevOps/Media/version-selector.png" alt-text = "Azure DevOps Içerik sürümü seçicideki bir sürüm seçin.":::image type="content" source="/azure/devops/media/version-selector.png" alt-text="Select a version from Azure DevOps Content Version selector."

Platformunuzun mevcut içeriğini görüntülemek için, içindekiler tablosunun üzerinde bulunan sürüm seçicisindeki Bu makalenin doğru sürümünü seçtiğinizden emin olun.To view the content available for your platform, make sure that you select the correct version of this article from the version selector which is located above the table of contents. Özellik desteği, Azure DevOps Services veya şirket içi Azure DevOps Server Team Foundation Server (TFS) olarak yeniden adlandırdığınıza bağlı olarak farklılık gösterir.Feature support differs depending on whether you are working from Azure DevOps Services or an on-premises version of Azure DevOps Server, renamed from Team Foundation Server (TFS).
Kullandığınız şirket içi sürümü öğrenmek için bkz. hangi platform/sürüme kullandığım kullanıyorum?To learn which on-premises version you are using, see What platform/version am I using?

İşlem hatlarınız Azure Pipelines ise, işlerinizi Microsoft tarafından barındırılan bir aracı kullanarak çalıştırmak için uygun bir seçeneğe sahip olursunuz.If your pipelines are in Azure Pipelines, then you've got a convenient option to run your jobs using a Microsoft-hosted agent. Microsoft tarafından barındırılan aracılarla, bakım ve yükseltmeler sizin yerinize sizin için gerçekleştirilir.With Microsoft-hosted agents, maintenance and upgrades are taken care of for you. İşlem hattını her çalıştırdığınızda, yeni bir sanal makine alırsınız.Each time you run a pipeline, you get a fresh virtual machine. Sanal makine bir kullanım sonrasında atılır.The virtual machine is discarded after one use. Microsoft tarafından barındırılan aracılar , işleri doğrudan VM üzerinde veya bir kapsayıcıdaçalıştırabilir.Microsoft-hosted agents can run jobs directly on the VM or in a container.

Azure Pipelines, Microsoft tarafından barındırılan aracılarla Azure Pipelines adlı önceden tanımlanmış bir aracı havuzu sağlar.Azure Pipelines provides a pre-defined agent pool named Azure Pipelines with Microsoft-hosted agents.

Birçok ekip için bu, işlerinizi çalıştırmanın en kolay yoludur.For many teams this is the simplest way to run your jobs. Önce deneyin, derleme veya dağıtımınız için çalışıp çalışmadığını görebilirsiniz.You can try it first and see if it works for your build or deployment. Aksi takdirde, kendi kendine barındırılan bir aracı kullanabilirsiniz.If not, you can use a self-hosted agent.

İpucu

Microsoft tarafından barındırılan bir aracıyı ücretsiz olarak deneyebilirsiniz.You can try a Microsoft-hosted agent for no charge.

YazılımSoftware

Azure Pipelines aracı havuzu, her biri çeşitli araçlar ve yazılımlar dahil olmak üzere, aralarından seçim yapabileceğiniz birkaç sanal makine görüntüsü sunar.The Azure Pipelines agent pool offers several virtual machine images to choose from, each including a broad range of tools and software.

GörüntüImage Klasik düzenleyici aracı belirtimiClassic Editor Agent Specification YAML VM görüntüsü etiketiYAML VM Image Label Dahil edilen yazılımIncluded Software
Visual Studio 2019 ile Windows Server 2019Windows Server 2019 with Visual Studio 2019 Windows-2019windows-2019 windows-latest VEYA windows-2019windows-latest OR windows-2019 BağlantıLink
Visual Studio 2017 ile Windows Server 2016Windows Server 2016 with Visual Studio 2017 vs2017-win2016vs2017-win2016 vs2017-win2016 BağlantıLink
Ubuntu 20.04Ubuntu 20.04 Ubuntu-20,04ubuntu-20.04 ubuntu-latest VEYA ubuntu-20.04ubuntu-latest OR ubuntu-20.04 BağlantıLink
Ubuntu 18.04Ubuntu 18.04 Ubuntu-18,04ubuntu-18.04 ubuntu-18.04 BağlantıLink
Ubuntu 16.04Ubuntu 16.04 Ubuntu-16,04ubuntu-16.04 ubuntu-16.04 BağlantıLink
macOS X Mojave 10,14macOS X Mojave 10.14 macOS-10,14macOS-10.14 macOS-10.14 BağlantıLink
macOS X Catalina 10,15macOS X Catalina 10.15 macOS-10,15macOS-10.15 macOS-latest VEYA macOS-10.15macOS-latest OR macOS-10.15 BağlantıLink

Tabloda bulunan yazılım bağlantısını seçerek, her barındırılan aracı için yüklü yazılımları görebilirsiniz.You can see the installed software for each hosted agent by choosing the Included Software link in the table. MacOS görüntülerini kullanırken araç sürümlerinden el ile seçim yapabilirsiniz.When using macOS images, you can manually select from tool versions. Aşağıya bakın.See below.

Not

Mart 2020 ' de, aşağıdaki Azure Pipelines barındırılan görüntüleri kaldırdık:In March 2020, we removed the following Azure Pipelines hosted images:

Müşterilerin vs2017-win2016 macOS-10.14 sırasıyla, veya Şirket içinde barındırılan bir aracıya geçirilmesi önerilir.Customers are encouraged to migrate to vs2017-win2016, macOS-10.14, or a self-hosted agent respectively.

Bu görüntüleri kullanan işlem hatlarınızı güncelleştirme hakkında daha fazla bilgi ve yönergeler için bkz. Azure Pipelines barındırılan havuzlardaki eski görüntüleri kaldırma.For more information and instructions on how to update your pipelines that use those images, see Removing older images in Azure Pipelines hosted pools.

Not

Azure Pipelines barındırılan havuz, ilgili görüntülerle eşlenen adlara sahip olan önceki barındırılan havuzların yerini alır.The Azure Pipelines hosted pool replaces the previous hosted pools that had names that mapped to the corresponding images. Önceki barındırılan havuzlarda bulunan tüm işler, yeni Azure Pipelines barındırılan havuzda doğru görüntüye otomatik olarak yönlendirilir.Any jobs you had in the previous hosted pools are automatically redirected to the correct image in the new Azure Pipelines hosted pool. Bazı durumlarda, eski havuz adlarını görmeye devam edebilir, ancak arka planda barındırılan işler Azure Pipelines havuzu kullanılarak çalıştırılır.In some circumstances, you may still see the old pool names, but behind the scenes the hosted jobs are run using the Azure Pipelines pool. Bu güncelleştirme hakkında daha fazla bilgi için, temmuz 1 2019-Sprint 154 sürüm notlarındaki tek barındırılan havuz sürüm notlarına bakın.For more information about this update, see the Single hosted pool release notes from the July 1 2019 - Sprint 154 release notes.

Önemli

Microsoft tarafından barındırılan aracılara yüklenecek ek yazılım istemek için, bu belgede geri bildirim isteği oluşturmayın veya bir destek bileti açın.To request additional software to be installed on Microsoft-hosted agents, don't create a feedback request on this document or open a support ticket. Bunun yerine, depomızdabir sorun açın, burada çeşitli görüntüler oluşturmak için betikleri yönetirsiniz.Instead, open an issue on our repository, where we manage the scripts to generate various images.

Microsoft tarafından barındırılan bir aracı kullanmaUse a Microsoft-hosted agent

YAML işlem hatları içinde, bir havuz belirtmezseniz, işlem hatları varsayılan olarak Azure Pipelines aracı havuzunda.In YAML pipelines, if you do not specify a pool, pipelines will default to the Azure Pipelines agent pool. Yalnızca kullanmak istediğiniz sanal makine görüntüsünü belirtmeniz yeterlidir.You simply need to specify which virtual machine image you want to use.

jobs:
- job: Linux
  pool:
    vmImage: 'ubuntu-latest'
  steps:
  - script: echo hello from Linux
- job: macOS
  pool:
    vmImage: 'macOS-latest'
  steps:
  - script: echo hello from macOS
- job: Windows
  pool:
    vmImage: 'windows-latest'
  steps:
  - script: echo hello from Windows

Not

Bir havuzun belirtimi bir YAML dosyasındaki birden çok düzeyde yapılabilir.The specification of a pool can be done at multiple levels in a YAML file. İşlem hattınızı beklenen görüntüde çalışmadığını fark ederseniz, havuz belirtimini ardışık düzen, aşama ve iş düzeylerinde doğruladığınızdan emin olun.If you notice that your pipeline is not running on the expected image, make sure that you verify the pool specification at the pipeline, stage, and job levels.

Sabit kodlanmış başvurulardan kaçınınAvoid hard-coded references

Microsoft tarafından barındırılan bir aracı kullandığınızda, derleme ortamı ve aracı kaynaklarına başvurmak için her zaman değişkenlerini kullanın.When you use a Microsoft-hosted agent, always use variables to refer to the build environment and agent resources. Örneğin, depoyu içeren sürücü harfi veya klasörü sabit kodmayın.For example, don't hard-code the drive letter or folder that contains the repository. Barındırılan aracıların kesin düzeni, uyarı vermeden değiştirilebilir.The precise layout of the hosted agents is subject to change without warning.

DonanımHardware

Windows ve Linux görüntülerini çalıştıran Microsoft tarafından barındırılan aracılar Standard_DS2_v2Azure genel amaçlı sanal makinelerde sağlanır.Microsoft-hosted agents that run Windows and Linux images are provisioned on Azure general purpose virtual machines Standard_DS2_v2. Bu sanal makineler, Azure DevOps kuruluşunuzla aynı coğrafi konumda bulunur.These virtual machines are colocated in the same geography as your Azure DevOps organization.

MacOS görüntülerini çalıştıran aracılar Mac uzmanları üzerinde sağlanır.Agents that run macOS images are provisioned on Mac pros. Bu aracılar, Azure DevOps kuruluşunuzun konumundan bağımsız olarak her zaman ABD 'de çalışır.These agents always run in the US irrespective of the location of your Azure DevOps organization. Veri egemenliği sizin için önemliyse ve kuruluşunuz ABD 'de değilse, macOS görüntülerini kullanmamalısınız.If data sovereignty is important to you and if your organization is not in the US, then you should not use macOS images. Daha fazla bilgi edinin.Learn more.

Bu makinelerin tümünde, işlem hatlarınızın çalışması için 10 GB boş disk alanı bulunur.All of these machines have 10 GB of free disk space available for your pipelines to run. Bu boş alan, işlem hatlarınız kaynak kodu denetlediğinde, paketleri indirdiğinde, Docker görüntülerini çeker veya ara dosyalar oluşturduğunda kullanılır.This free space is consumed when your pipeline checks out source code, downloads packages, pulls docker images, or generates intermediate files.

Önemli

Microsoft tarafından barındırılan aracılarda disk alanını artırmak veya daha güçlü makineler sağlamak için istekleri karşılayamıyoruz.We cannot honor requests to increase disk space on Microsoft-hosted agents, or to provision more powerful machines. Microsoft tarafından barındırılan aracıların belirtimleri gereksinimlerinizi karşılamıyorsa, kendi kendine barındırılan aracıları veya Ölçek kümesi aracılarınıdüşünmelisiniz.If the specifications of Microsoft-hosted agents do not meet your needs, then you should consider self-hosted agents or scale set agents.

Networking

Bazı kurulumlarda aracıların dağıtıldığı IP adresleri aralığını bilmeniz gerekebilir.In some setups, you may need to know the range of IP addresses where agents are deployed. Örneğin, barındırılan aracıların bir güvenlik duvarı üzerinden erişimine izin vermeniz gerekiyorsa, bu erişimi IP adresine göre kısıtlamak isteyebilirsiniz.For instance, if you need to grant the hosted agents access through a firewall, you may wish to restrict that access by IP address. Azure DevOps, Azure genel ağını kullandığından, IP aralıkları zamana göre farklılık gösterir.Because Azure DevOps uses the Azure global network, IP ranges vary over time. Azure veri merkezleri için, bölgeye göre bölünmüş bir haftalık JSON dosyası ve IP aralıklarını yayımladık.We publish a weekly JSON file listing IP ranges for Azure datacenters, broken out by region. Bu dosya, yeni planlı IP aralıklarıyla haftalık olarak güncelleştirilir.This file is updated weekly with new planned IP ranges. Yeni IP aralıkları aşağıdaki hafta etkin hale gelir.The new IP ranges become effective the following week. Güncel listeyi tutmanızı sağlamak için sık sık (her hafta en az bir kez) kontrol etmenizi öneririz.We recommend that you check back frequently (at least once every week) to ensure you keep an up-to-date list. Aracı işleri başarısız çalışmaya başlarsa, önemli bir ilk sorun giderme adımı, yapılandırmanızın en son IP adresi listesiyle eşleştiğinden emin olmak olur.If agent jobs begin to fail, a key first troubleshooting step is to make sure your configuration matches the latest list of IP addresses. Barındırılan aracılar için IP adresi aralıkları AzureCloud.<region> , Batı ABD bölgesi gibi, altındaki haftalık dosyada listelenmiştir AzureCloud.westus .The IP address ranges for the hosted agents are listed in the weekly file under AzureCloud.<region>, such as AzureCloud.westus for the West US region.

Barındırılan aracılarınız, kuruluşunuzla aynı Azure Coğrafya 'da çalışır.Your hosted agents run in the same Azure geography as your organization. Her Coğrafya bir veya daha fazla bölge içerir.Each geography contains one or more regions. Aracınız, kuruluşunuzla aynı bölgede çalıştırılabilir, ancak bunu yapmak garanti edilmez.While your agent may run in the same region as your organization, it is not guaranteed to do so. Aracılarınız için olası IP aralıklarının tüm listesini almak için coğrafya 'da yer alan tüm bölgelerdeki IP aralıklarını kullanmanız gerekir.To obtain the complete list of possible IP ranges for your agent, you must use the IP ranges from all of the regions that are contained in your geography. Örneğin, kuruluşunuz Birleşik Devletler Coğrafya içinde bulunuyorsa, bu coğrafya içindeki tüm bölgeler için IP aralıklarını kullanmanız gerekir.For example, if your organization is located in the United States geography, you must use the IP ranges for all of the regions in that geography.

Coğrafya 'yı bulmak için şuraya gidin https://dev.azure.com/<your_organization>/_settings/organizationOverview , bölgenizi alın ve Azure Coğrafya tablosundan ilişkili Coğrafya bulun.To determine your geography, navigate to https://dev.azure.com/<your_organization>/_settings/organizationOverview, get your region, and find the associated geography from the Azure geography table. Coğrafya 'yı tanımladıktan sonra, bu coğrafya içindeki tüm bölgeler için haftalık DOSYADAKI IP aralıklarını kullanın.Once you have identified your geography, use the IP ranges from the weekly file for all regions in that geography.

Önemli

Microsoft tarafından barındırılan aracıları kurumsal ağınıza bağlamak için ExpressRoute veya VPN gibi özel bağlantıları kullanamazsınız.You cannot use private connections such as ExpressRoute or VPN to connect Microsoft-hosted agents to your corporate network. Microsoft tarafından barındırılan aracılar ile sunucularınız arasındaki trafik ortak ağ üzerinden olacaktır.The traffic between Microsoft-hosted agents and your servers will be over public network.

Microsoft tarafından barındırılan aracıların olası IP aralıklarını belirlemek içinTo identify the possible IP ranges for Microsoft-hosted agents

  1. Kuruluş ayarları' nda kuruluşunuzun bölgesini belirler.Identify the region for your organization in Organization settings.
  2. Kuruluşunuzun bölgesi için Azure coğrafi bölge 'yi belirler.Identify the Azure Geography for your organization's region.
  3. Coğrafya içindeki bölgelerin adlarını, biçimini izleyerek haftalık dosyada kullanılan biçime eşleyin AzureCloud.<region> AzureCloud.westus .Map the names of the regions in your geography to the format used in the weekly file, following the format of AzureCloud.<region>, such as AzureCloud.westus. .Net Için Azure Yönetim kitaplıkları'ndan bölge sınıfının kaynak kodundatanımlı bölge adlarını Inceleyerek, bölgelerin adlarını Azure Coğrafya listesinden haftalık dosyada kullanılan biçime eşleyebilirsiniz. Bu, bölgenin adınıYou can map the names of the regions from the Azure Geography list to the format used in the weekly file by reviewing the region names passed to the constructor of the regions defined in the source code for the Region class, from the Azure Management Libraries for .NET.

    Not

    .Net Için Azure Yönetim kitaplıklarında bir Coğrafya bölgelerini LISTELEMEDIĞINDEN API olmadığından, bunları aşağıdaki örnekte gösterildiği gibi el ile listemalısınız.Since there is no API in the Azure Management Libraries for .NET to list the regions for a geography, you must list them manually as shown in the following example.

  4. Haftalık dosyadanCoğrafya 'daki tüm bölgelerin IP adreslerini alın.Retrieve the IP addresses for all regions in your geography from the weekly file. Bölgeniz Brezilya Güney veya Batı Avrupa ise, aşağıdaki notta açıklandığı gibi, geri dönüş Coğrafya temelinde ek IP aralıklarını dahil etmeniz gerekir.If your region is Brazil South or West Europe, you must include additional IP ranges based on your fallback geography, as described in the following note.

Not

Kapasite kısıtlamaları nedeniyle Brezilya Güney veya Batı Avrupa bölgelerinde bulunan bazı kuruluşlar, zaman zaman kendi beklenen Coğrafya dışında bulunan barındırılan aracılarını görebilir.Due to capacity restrictions, some organizations in the Brazil South or West Europe regions may occasionally see their hosted agents located outside their expected geography. Bu durumlarda, önceki bölümde açıklandığı gibi IP aralıklarını eklemenin yanı sıra kapasite geri dönüş Coğrafya 'daki bölgelere ek IP aralıkları dahil edilmesi gerekir.In these cases, in addition to including the IP ranges as described in the previous section, additional IP ranges must be included for the regions in the capacity fallback geography.

Kuruluşunuz Brezilya Güney bölgedeyse, kapasiteniz geri dönüş Coğrafya Birleşik Devletler.If your organization is in the Brazil South region, your capacity fallback geography is United States.

Kuruluşunuz Batı Avrupa bölgedeyse, kapasite geri dönüş Coğrafya Fransa olur.If your organization is in the West Europe region, the capacity fallback geography is France.

Mac IP aralıklarımız yukarıdaki Azure IP 'lerine dahil değildir, ancak bunları gelecekte yayımlamaya yönelik seçenekleri araştırıyoruz.Our Mac IP ranges are not included in the Azure IPs above, though we are investigating options to publish these in the future.

ÖrnekExample

Aşağıdaki örnekte, Batı ABD bölgesindeki bir kuruluş için barındırılan aracı IP adresi aralıkları haftalık dosyadan alınır.In the following example, the hosted agent IP address ranges for an organization in the West US region are retrieved from the weekly file. Batı ABD bölgesi Birleşik Devletler Coğrafya 'da olduğundan, Birleşik Devletler coğrafya içindeki tüm bölgelerin IP adresleri dahil edilir.Since the West US region is in the United States geography, the IP addresses for all regions in the United States geography are included. Bu örnekte, IP adresleri konsola yazılır.In this example, the IP addresses are written to the console.

using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;

namespace WeeklyFileIPRanges
{
    class Program
    {
        // Path to the locally saved weekly file
        const string weeklyFilePath = @"C:\MyPath\ServiceTags_Public_20200504.json";

        static void Main(string[] args)
        {
            // United States geography has the following regions:
            // Central US, East US 2, East US, North Central US, 
            // South Central US, West Central US, West US, West US 2
            List<string> USGeographyRegions = new List<string>
            {
                "centralus",
                "eastus",
                "eastus2",
                "northcentralus",
                "southcentralus",
                "westcentralus",
                "westus",
                "westus2"
            };

            // Load the weekly file
            JObject weeklyFile = JObject.Parse(File.ReadAllText(weeklyFilePath));
            JArray values = (JArray)weeklyFile["values"];

            foreach (string region in USGeographyRegions)
            {
                string azureCloudRegion = $"AzureCloud.{region}";
                Console.WriteLine(azureCloudRegion);

                var ipList =
                    from v in values
                    where (string)v["name"] == azureCloudRegion
                    select v["properties"]["addressPrefixes"];

                foreach (var ip in ipList.Children())
                {
                    Console.WriteLine(ip);
                }
            }
        }
    }
}

Hizmet etiketleriService tags

Microsoft tarafından barındırılan aracılar hizmet etiketlerine göre listelenmeyebilir.Microsoft-hosted agents can't be listed by service tags. Kaynaklarınızda barındırılan aracıların erişimine izin vermeye çalışıyorsanız, IP aralığı listeleme metoduna izlemeniz gerekir.If you're trying to grant hosted agents access to your resources, you'll need to follow the IP range allow listing method.

GüvenlikSecurity

Microsoft tarafından barındırılan aracılar güvenli Azure platformunda çalışır.Microsoft-hosted agents run on secure Azure platform. Ancak, aşağıdaki güvenlik konularını bilmeniz gerekir.However, you must be aware of the following security considerations.

  • Microsoft tarafından barındırılan aracılar Azure ortak ağı üzerinde çalıştırılsa da, genel IP adresleri atanmaz.Although Microsoft-hosted agents run on Azure public network, they are not assigned public IP addresses. Bu nedenle, dış varlıklar Microsoft tarafından barındırılan aracıları hedefleyemiyor.So, external entities cannot target Microsoft-hosted agents.
  • Microsoft tarafından barındırılan aracılar, her çalıştırmasından sonra yeniden yansıma oluşturulan tek VM 'lerde çalıştırılır.Microsoft-hosted agents are run in individual VMs, which are re-imaged after each run. Her aracı tek bir kuruluşa ayrılmıştır ve her VM yalnızca tek bir aracı barındırır.Each agent is dedicated to a single organization, and each VM hosts only a single agent.
  • Bir güvenlik açısından, Microsoft tarafından barındırılan aracılarda işlem hattınızı çalıştırmanın çeşitli avantajları vardır.There are several benefits to running your pipeline on Microsoft-hosted agents, from a security perspective. İşlem hattınızda çatallardan katkı gibi güvenilmeyen kod çalıştırırsanız, işlem hattının kurumsal ağınızda bulunan şirket içinde barındırılan aracılardan farklı şekilde Microsoft tarafından barındırılan aracılarda çalıştırılması daha güvenlidir.If you run untrusted code in your pipeline, such as contributions from forks, it is safer to run the pipeline on Microsoft-hosted agents than on self-hosted agents that reside in your corporate network.
  • Bir işlem hattının bir güvenlik duvarının arkasındaki kurumsal kaynaklarınıza erişmesi gerektiğinde, Azure coğrafya için IP adresi aralığına izin vermeniz gerekir.When a pipeline needs to access your corporate resources behind a firewall, you have to allow the IP address range for the Azure geography. Bu, IP adresi aralığı büyük olduğu ve bu aralıktaki makineler diğer müşterilere da ait olabileceğinden, pozlandırmayı artırabilir.This may increase your exposure as the range of IP addresses is rather large and since machines in this range can belong to other customers as well. Bunu önlemenin en iyi yolu, iç kaynaklara erişme gereksinimini önlemektir.The best way to prevent this is to avoid the need to access internal resources.
  • Barındırılan görüntüler, CIS sağlamlaştırma kıyaslamalarıylauyumlu değildir.Hosted images do not conform to CIS hardening benchmarks. CIS ile güçlendirilmiş görüntüleri kullanmak için, şirket içinde barındırılan aracıları veya ölçek kümesi aracılarını oluşturmanız gerekir.To use CIS-hardened images, you must create either self-hosted agents or scale-set agents.

Özellikler ve sınırlamalarCapabilities and limitations

Microsoft tarafından barındırılan aracılar:Microsoft-hosted agents:

  • Yukarıdaki yazılımasahip olmanız gerekir.Have the above software. Araç yükleyici görevlerinikullanarak, derleme veya yayın sırasında da yazılım ekleyebilirsiniz.You can also add software during your build or release using tool installer tasks.
  • Kaynak ve derleme çıktılarınız için 10 GB depolama alanı sağlayın.Provide 10 GB of storage for your source and build outputs.
  • Ücretsiz bir katman sağlayın:Provide a free tier:
    • Ortak proje: ayda her seferinde 360 dakikaya (6 saat) kadar çalışabilen, Microsoft tarafından sunulan, ücretsiz olarak Microsoft tarafından barındırılan paralel işler.Public project: 10 free Microsoft-hosted parallel jobs that can run for up to 360 minutes (6 hours) each time, with no overall time limit per month. Ücretsiz katman sınırlarınızın artırılmasını sağlamak için bizimle Iletişim kurun .Contact us to get your free tier limits increased.
    • Özel proje: ayda 1.800 dakika (30 saat) kullanana kadar her seferinde 60 dakikaya kadar çalışabilen bir ücretsiz paralel iş.Private project: One free parallel job that can run for up to 60 minutes each time, until you've used 1,800 minutes (30 hours) per month. Paralel iş başına ek kapasite için ödeme yapabilirsiniz.You can pay for additional capacity per parallel job. Ücretli paralel işler aylık zaman sınırını kaldırır ve her işi 360 dakikaya kadar (6 saat) çalıştırmanıza olanak sağlar.Paid parallel jobs remove the monthly time limit and allow you to run each job for up to 360 minutes (6 hours). Microsoft tarafından barındırılan paralel Işler satın alın.Buy Microsoft-hosted parallel jobs.
  • Microsoft Azure genel amaçlı sanal makinelerde çalıştırın Standard_DS2_v2Run on Microsoft Azure general purpose virtual machines Standard_DS2_v2
  • Linux 'ta Windows 'da yönetici olarak ve parolasız sudo kullanıcısı olarak çalıştırRun as an administrator on Windows and a passwordless sudo user on Linux
  • (Yalnızca Linux) cgroup 6 GB fiziksel bellek ve 13 GB toplam bellek sunan bir içinde adımları çalıştırın(Linux only) Run steps in a cgroup that offers 6 GB of physical memory and 13 GB of total memory

Microsoft tarafından barındırılan aracılar şunları sunmaz:Microsoft-hosted agents do not offer:

  • Uzaktan bağlanma özelliği.The ability to remotely connect.
  • Yapıtları BIR UNC dosya paylaşımında bırakmaözelliği.The ability to drop artifacts to a UNC file share.
  • Makinelere doğrudan kurumsal ağınıza katılabilme olanağı.The ability to join machines directly to your corporate network.
  • Daha büyük veya daha güçlü derleme makineleri alma özelliği.The ability to get bigger or more powerful build machines.
  • Özel yazılımı önceden yükleme özelliği.The ability to pre-load custom software. Yazılım, araç yükleyici görevleri veya bir komut dosyası gibi bir işlem hattı çalıştırması sırasında yükleyebilirsiniz.You can install software during a pipeline run, such as through tool installer tasks or in a script.
  • Derlemeleri başlatıp çalıştırabilecek, kendi kendine barındırılan aracıları kullanarak alabileceğiniz olası performans avantajları.Potential performance advantages that you might get by using self-hosted agents that might start and run builds faster. Daha fazla bilgi edininLearn more
  • Xaml derlemeleriniçalıştırma özelliği.The ability to run XAML builds.

Microsoft tarafından barındırılan aracılar gereksinimlerinizi karşılamıyorsa, kendi Şirket içinde barındırılan aracılarınızı dağıtabilir veya Ölçek kümesi aracılarınıkullanabilirsiniz.If Microsoft-hosted agents don't meet your needs, then you can deploy your own self-hosted agents or use scale set agents.

SSSFAQ

Görüntüye hangi yazılımın dahil edildiğini nasıl görebilirim?How can I see what software is included in an image?

Microsoft tarafından barındırılan aracı tablosu kullan bölümünde bulunan yazılım bağlantısını seçerek, her barındırılan aracı için yüklü yazılımları görebilirsiniz.You can see the installed software for each hosted agent by choosing the Included Software link in the Use a Microsoft-hosted agent table.

Microsoft, görüntüye yerleştirilecek yazılım ve sürümleri nasıl seçer?How does Microsoft choose the software and versions to put on the image?

Resimlerde bulunan yazılımın sürümleri hakkında daha fazla bilgi için, nelerin yüklü olduğuna Ilişkin yönergelerbulabilirsiniz.More information about the versions of software included on the images can be found at Guidelines for what's installed.

Görüntüler ne zaman güncelleştiriliyor?When are the images updated?

Görüntüler genellikle haftalık olarak güncelleştirilir.Images are typically updated weekly. İlk parçanın, görüntünün güncelleştirildiği tarihi gösterdiği biçimde olan durum rozetlerini kontrol edebilirsiniz 20200113.x .You can check the status badges which are in the format 20200113.x where the first part indicates the date the image was updated.

İhtiyaç duydum yazılım kaldırıldıktan veya daha yeni bir sürümle değiştirildiğimde ne yapabilirim?What can I do if software I need is removed or replaced with a newer version?

Microsoft tarafından barındırılan aracı tablosu kullan bölümünde bulunan yazılım bağlantılarını seçerek bir GitHub sorunu kaydederek bize bilgi verebilirsiniz.You can let us know by filing a GitHub issue by choosing the Included Software links in the Use a Microsoft-hosted agent table.

Ayrıca, ihtiyacınız olan yazılımın tam sürümlerini içeren, kendi kendine barındırılan bir aracı da kullanabilirsiniz.You can also use a self-hosted agent that includes the exact versions of software that you need. Daha fazla bilgi için bkz. Şirket içinde barındırılan aracılar.For more information, see Self-hosted agents.

Daha fazla işlem gücü, bellek veya disk alanı bulunan daha büyük bir makineye ihtiyacım varsa ne yapmalıyım?What if I need a bigger machine with more processing power, memory, or disk space?

Microsoft tarafından barındırılan aracılar için bellek, işlem gücü veya disk alanı artırılamıyor, ancak istediğiniz belirtimlerle makinelerde barındırılan kendi kendine barındırılan aracıları veya Ölçek kümesi aracılarını kullanabilirsiniz.We can't increase the memory, processing power, or disk space for Microsoft-hosted agents, but you can use self-hosted agents or scale set agents hosted on machines with your desired specifications.

Microsoft tarafından barındırılan bir aracı seçemiyorum ve derleme veya dağıtımımı sıraya alamıyorum.I can't select a Microsoft-hosted agent and I can't queue my build or deployment. Ne yapmalıyım?What should I do?

Microsoft tarafından barındırılan aracılar TFS veya Azure DevOps Server değil yalnızca Azure Pipelines kullanılabilir.Microsoft-hosted agents are only available in Azure Pipelines and not in TFS or Azure DevOps Server.

Varsayılan olarak, bir kuruluştaki tüm proje katılımcıları Microsoft tarafından barındırılan aracılara erişebilir.By default, all project contributors in an organization have access to the Microsoft-hosted agents. Ancak, kuruluş yöneticiniz, Microsoft tarafından barındırılan aracıların erişimini Kullanıcı veya proje seçmek için sınırlayabilir.But, your organization administrator may limit the access of Microsoft-hosted agents to select users or projects. Azure DevOps kuruluşunuzun sahibinden Microsoft tarafından barındırılan bir aracı kullanma izni vermesini isteyin.Ask the owner of your Azure DevOps organization to grant you permission to use a Microsoft-hosted agent. Bkz. Aracı havuzu güvenliği.See agent pool security.

Microsoft tarafından barındırılan aracılarda çalışan ardışık düzenlerimin tamamlanması daha fazla zaman alır.My pipelines running on Microsoft-hosted agents take more time to complete. Bunları nasıl hızlandırabilirim?How can I speed them up?

İşlem hatlarınız yakın zamanda daha yavaş hale gelirse, kesintiler için durum sayfamızı gözden geçirin.If your pipeline has recently become slower, review our status page for any outages. Hizmetimizdeki sorunlarla karşılaşıyoruz.We could be having issues with our service. Ya da başka bir deyişle, uygulama kodunuzda veya işlem hattınızda yaptığınız tüm değişiklikleri gözden geçirin.Or else, review any changes that you made in your application code or pipeline. Teslim alma sırasında depo boyutunuz artmış olabilir, daha büyük yapıtları karşıya yüklüyor olabilirsiniz veya daha fazla test çalıştırıyor olabilirsiniz.Your repository size during check-out might have increased, you may be uploading larger artifacts, or you may be running more tests.

Yalnızca bir işlem hattı ayarlıyorsanız ve Microsoft tarafından barındırılan aracıların performansını yerel makinenize veya şirket içinde barındırılan bir aracıya karşılaştırıyorsanız, işlerinizi çalıştırmak için kullandığımız donanımın özelliklerine göz önünde barının.If you are just setting up a pipeline and are comparing the performance of Microsoft-hosted agents to your local machine or a self-hosted agent, then note the specifications of the hardware that we use to run your jobs. Size daha büyük veya güçlü makineler sağlayamıyoruz.We are unable to provide you with bigger or powerful machines. Bu performans kabul edilebilir değilse, kendi kendine barındırılan aracıları veya Ölçek kümesi aracılarını kullanmayı düşünebilirsiniz.You can consider using self-hosted agents or scale set agents if this performance is not acceptable.

Daha fazla aracıya ihtiyacım var.I need more agents. Ne yapabilirim?What can I do?

Tüm Azure DevOps kuruluşları, açık kaynaklı projeler için birkaç ücretsiz paralel iş ve özel projeler için her ay bir ücretsiz paralel iş ve sınırlı dakikalık bir şekilde sağlanır.All Azure DevOps organizations are provided with several free parallel jobs for open-source projects, and one free parallel job and limited minutes each month for private projects. Açık kaynak projeniz için ek dakikaya veya paralel işlere ihtiyacınız varsa desteğebaşvurun.If you need additional minutes or parallel jobs for your open-source project, contact support. Özel projeniz için ek dakikalar veya paralel işler gerekiyorsa, daha fazla satınalabilirsiniz.If you need additional minutes or parallel jobs for your private project, then you can buy more.

Ardışık düzen kendi kendine barındırılan aracıda başarılı oldu, ancak Microsoft tarafından barındırılan aracılarda başarısız oluyor.My pipeline succeeds on self-hosted agent, but fails on Microsoft-hosted agents. Ne yapmalıyım?What should I do?

Şirket içinde barındırılan aracılarınızda büyük olasılıkla tüm doğru bağımlılıklar yüklü, ancak aynı bağımlılıklar, Araçlar ve yazılımlar Microsoft tarafından barındırılan aracılarda yüklü değildir.Your self-hosted agent probably has all the right dependencies installed on it, whereas the same dependencies, tools, and software are not installed on Microsoft-hosted agents. İlk olarak, yukarıdaki tabloda yer alan yazılımın bağlantısını izleyerek Microsoft tarafından barındırılan aracılarda yüklü yazılımların listesini dikkatle gözden geçirin.First, carefully review the list of software that is installed on Microsoft-hosted agents by following the link to Included software in the table above. Ardından, bunu kendi kendine barındırılan aracısında yüklü yazılımlarla karşılaştırın.Then, compare that with the software installed on your self-hosted agent. Bazı durumlarda, Microsoft tarafından barındırılan aracıların ihtiyacınız olan araçları (örneğin, Visual Studio) olabilir, ancak gerekli tüm isteğe bağlı bileşenler yüklenmemiş olabilir.In some cases, Microsoft-hosted agents may have the tools that you need (for example, Visual Studio), but all of the necessary optional components may not have been installed. Farkları bulursanız, iki seçeneğiniz vardır:If you find differences, then you have two options:

  • Depodayeni bir sorun oluşturabilirsiniz ve bu da ek yazılım isteklerini izliyoruz.You can create a new issue on the repository, where we track requests for additional software. Destek ile iletişim kurmak, Microsoft tarafından barındırılan aracılarda yeni yazılım ayarlamanıza yardımcı olmaz.Contacting support will not help you with setting up new software on Microsoft-hosted agents.

  • Kendi kendine barındırılan aracıları veya Ölçek kümesi aracılarınıkullanabilirsiniz.You can use self-hosted agents or scale set agents. Bu aracılarla, işlem hatlarınızı çalıştırmak için kullanılan görüntülerin tam denetimine sahip olursunuz.With these agents, you are fully in control of the images that are used to run your pipelines.

Yapımın yerel makineme başarılı, ancak Microsoft tarafından barındırılan aracılarda başarısız oluyor.My build succeeds on my local machine, but fails on Microsoft-hosted agents. Ne yapmalıyım?What should I do?

Yerel makinenizde büyük olasılıkla tüm doğru bağımlılıklar yüklenmiş, ancak aynı bağımlılıklar, Araçlar ve yazılımlar Microsoft tarafından barındırılan aracılarda yüklü değildir.Your local machine probably has all the right dependencies installed on it, whereas the same dependencies, tools, and software are not installed on Microsoft-hosted agents. İlk olarak, yukarıdaki tabloda yer alan yazılımın bağlantısını izleyerek Microsoft tarafından barındırılan aracılarda yüklü yazılımların listesini dikkatle gözden geçirin.First, carefully review the list of software that is installed on Microsoft-hosted agents by following the link to Included software in the table above. Ardından, bunu yerel makinenizde yüklü yazılımlarla karşılaştırın.Then, compare that with the software installed on your local machine. Bazı durumlarda, Microsoft tarafından barındırılan aracıların ihtiyacınız olan araçları (örn. Visual Studio) olabilir, ancak gerekli tüm isteğe bağlı bileşenler yüklenmemiş olabilir.In some cases, Microsoft-hosted agents may have the tools that you need (e.g., Visual Studio), but all of the necessary optional components may not have been installed. Farkları bulursanız, iki seçeneğiniz vardır:If you find differences, then you have two options:

  • Depodayeni bir sorun oluşturabilirsiniz ve bu da ek yazılım isteklerini izliyoruz.You can create a new issue on the repository, where we track requests for additional software. Bu, yeni yazılım yükleme için en iyi noktadır.This is your best bet for getting new software installed. Destek ile iletişim kurmak, Microsoft tarafından barındırılan aracılarda yeni yazılım ayarlamanıza yardımcı olmaz.Contacting support will not help you with setting up new software on Microsoft-hosted agents.

  • Kendi kendine barındırılan aracıları veya Ölçek kümesi aracılarınıkullanabilirsiniz.You can use self-hosted agents or scale set agents. Bu aracılarla, işlem hatlarınızı çalıştırmak için kullanılan görüntülerin tam denetimine sahip olursunuz.With these agents, you are fully in control of the images that are used to run your pipelines.

Ardışık düzen şu hatayla başarısız oldu: "cihazda boşluk kalmadı".My pipeline fails with the error: "no space left on device".

Microsoft tarafından barındırılan aracılarda işinizi çalıştırmak için yalnızca 10 GB kullanılabilir disk alanı vardır.Microsoft-hosted agents only have 10 GB of disk space available for running your job. Bu alan, kaynak kodu kullanıma aldığınızda, Docker görüntülerini karşıdan yüklerken veya ara dosyalar oluşturduğunuzda kullanılır.This space is consumed when you check out source code, when you download packages, when you download docker images, or when you produce intermediate files. Ne yazık ki, Microsoft tarafından barındırılan görüntülerde kullanılabilen boş alanı artıramıyoruz.Unfortunately, we cannot increase the free space available on Microsoft-hosted images. İşlem hattınızı bu alana sığması için yeniden yapılandırabilirsiniz.You can restructure your pipeline so that it can fit into this space. Ya da, kendi kendine barındırılan aracıları veya Ölçek kümesi aracılarınıkullanmayı düşünebilirsiniz.Or, you can consider using self-hosted agents or scale set agents.

Microsoft tarafından barındırılan aracılarda çalışan ardışık düzen, kurumsal ağımızda sunuculara erişim gerektiriyor mu?My pipeline running on Microsoft-hosted agents requires access to servers on our corporate network? Güvenlik duvarımızda izin verilecek IP adreslerinin bir listesini nasıl edinebilirim?How do we get a list of IP addresses to allow in our firewall?

Bkz. bölüm ARACıSı IP aralıklarıSee the section Agent IP ranges

Microsoft tarafından barındırılan aracılarda çalışan işlem hatmız, kurumsal ağınızdaki bir sunucunun adını çözümleyemiyor.Our pipeline running on Microsoft-hosted agents is unable to resolve the name of a server on our corporate network. Bunu nasıl çözebiliriz?How can we fix this?

Sunucuya DNS adına göre başvurursanız, sunucunuzun DNS adı aracılığıyla Internet üzerinde herkese açık bir şekilde erişilebilir olduğundan emin olun.If you refer to the server by its DNS name, then make sure that your server is publicly accessible on the Internet through its DNS name. Sunucunuza IP adresiyle başvurursanız, IP adresinin Internet üzerinden genel olarak erişilebilir olduğundan emin olun.If you refer to your server by its IP address, make sure that the IP address is publicly accessible on the Internet. Her iki durumda da, aracılarla kurumsal ağınız arasındaki herhangi bir güvenlik duvarının, Aracı IP aralıklarına izin verildiğinden emin olun.In both cases, ensure that any firewall in between the agents and your corporate network has the agent IP ranges allowed.

Azure depolama hesabından SAS IP yetkilendirmesi hatası alıyorumI'm getting an SAS IP authorization error from an Azure Storage account

SAS hata kodu alırsanız, Microsoft tarafından barındırılan aracılardan gelen IP adresi aralıklarına Azure depolama kurallarınız nedeniyle izin verilmediğinden, bu durum büyük olasılıkla olabilir.If you get an SAS error code, it is most likely because the IP address ranges from the Microsoft-hosted agents aren't permitted due to your Azure Storage rules. Birkaç geçici çözüm vardır:There are a few workarounds:

  1. Azure depolama hesabınız IÇIN IP ağ kurallarını yönetin ve barındırılan aracılarınız için IP adresi aralıklarınıekleyin.Manage the IP network rules for your Azure Storage account and add the IP address ranges for your hosted agents.
  2. İşlem hattınızda, depolama alanına erişmeden önce Azure depolama hesabınızın ağ kural kümesini güncelleştirmek Için Azure CLI ' yı kullanın ve ardından önceki RuleSet 'i geri yükleyin.In your pipeline, use Azure CLI to update the network ruleset for your Azure Storage account right before you access storage, and then restore the previous ruleset.
  3. Şirket içinde barındırılan aracıları veya Ölçek kümesi aracılarınıkullanın.Use self-hosted agents or Scale set agents.

Barındırılan macOS aracısında araçların sürümlerini el ile nasıl seçirim?How can I manually select versions of tools on the Hosted macOS agent?

XamarinXamarin

Barındırılan macOS aracısında kullanmak üzere Xamarin SDK sürümünü el ile seçmek Için, Xamarin Build göreviniz öncesinde bu komut satırını derlemeniz kapsamında yürütün ve (aynı zamanda '. ' karakterlerini alt çizgi ile değiştirin: ' _ ').To manually select a Xamarin SDK version to use on the Hosted macOS agent, before your Xamarin build task, execute this command line as part of your build, replacing the Mono version number 5.4.1 as needed (also replacing '.' characters with underscores: '_'). İhtiyaç duyduğunuz Xamarin SDK sürümü ile ilişkili mono sürümünü seçin.Choose the Mono version that is associated with the Xamarin SDK version that you need.

/bin/bash -c "sudo $AGENT_HOMEDIRECTORY/scripts/select-xamarin-sdk.sh 5_4_1"

Barındırılan macOS aracısındaki Xamarin SDK sürümleriyle ilişkili mono sürümler buradabulunabilir.Mono versions associated with Xamarin SDK versions on the Hosted macOS agent can be found here.

Bu komut, Xamarin SDK ötesinde mono sürümünü seçmeyin.This command does not select the Mono version beyond the Xamarin SDK. Bir mono sürümünü el ile seçmek için aşağıdaki yönergelere bakın.To manually select a Mono version, see instructions below.

Xamarin. iOS veya Xamarin. Mac uygulamalarınızı oluşturmak için varsayılan olmayan bir Xcode sürümü kullanıyorsanız, bu komut satırını Ayrıca yürütmelisiniz:In case you are using a non-default version of Xcode for building your Xamarin.iOS or Xamarin.Mac apps, you should additionally execute this command line:

/bin/bash -c "echo '##vso[task.setvariable variable=MD_APPLE_SDK_ROOT;]'$(xcodeRoot);sudo xcode-select --switch $(xcodeRoot)/Contents/Developer"

Burada $(xcodeRoot) =/Applications/Xcode_10.1.appwhere $(xcodeRoot) = /Applications/Xcode_10.1.app

Barındırılan macOS aracı havuzundaki Xcode sürümleri buradabulunabilir.Xcode versions on the Hosted macOS agent pool can be found here.

XcodeXcode

Azure Pipelines ve TFS 'ye dahil edilen Xcode görevini kullanıyorsanız, bu görevin özelliklerinde bir Xcode sürümü seçebilirsiniz.If you use the Xcode task included with Azure Pipelines and TFS, you can select a version of Xcode in that task's properties. Aksi takdirde, Xcode sürümünü barındırılan macOS aracı havuzunda kullanılmak üzere el ile ayarlamak için, xcodebuild Yapı görevinden önce, bu komut satırını derlemenize bir parçası olarak yürütün ve Xcode sürüm numarasını 8.3.3 gerektiği gibi değiştirin:Otherwise, to manually set the Xcode version to use on the Hosted macOS agent pool, before your xcodebuild build task, execute this command line as part of your build, replacing the Xcode version number 8.3.3 as needed:

/bin/bash -c "sudo xcode-select -s /Applications/Xcode_8.3.3.app/Contents/Developer"

Barındırılan macOS aracı havuzundaki Xcode sürümleri buradabulunabilir.Xcode versions on the Hosted macOS agent pool can be found here.

Bu komut Xamarin uygulamaları için çalışmaz.This command does not work for Xamarin apps. Xamarin uygulamaları oluşturmaya yönelik bir Xcode sürümünü el ile seçmek için yukarıdaki yönergelere bakın.To manually select an Xcode version for building Xamarin apps, see instructions above.

MonoMono

Barındırılan macOS aracı havuzunda kullanmak üzere bir mono sürümünü el ile seçmek Için, mono derleme görevinden önce, bu betiği, oluşturduğunuz her bir işinde yürütün ve 5.4.1 mono sürüm numarasını gerektiği gibi değiştirin:To manually select a Mono version to use on the Hosted macOS agent pool, before your Mono build task, execute this script in each job of your build, replacing the Mono version number 5.4.1 as needed:

SYMLINK=5_4_1
MONOPREFIX=/Library/Frameworks/Mono.framework/Versions/$SYMLINK
echo "##vso[task.setvariable variable=DYLD_FALLBACK_LIBRARY_PATH;]$MONOPREFIX/lib:/lib:/usr/lib:$DYLD_LIBRARY_FALLBACK_PATH"
echo "##vso[task.setvariable variable=PKG_CONFIG_PATH;]$MONOPREFIX/lib/pkgconfig:$MONOPREFIX/share/pkgconfig:$PKG_CONFIG_PATH"
echo "##vso[task.setvariable variable=PATH;]$MONOPREFIX/bin:$PATH"

.NET Core.NET Core

.NET Core 2.2.105, VM görüntülerinde varsayılandır, ancak mono sürüm 6,0 veya üzeri .NET Core 2.2.300 + gerektirir..NET Core 2.2.105 is default on VM images but Mono version 6.0 or greater requires .NET Core 2.2.300+. Mono 6,0 veya üstünü kullanırsanız .NET Core Aracı yükleyici görevinikullanarak .NET Core sürümünü geçersiz kılmanız gerekir.If you use the Mono 6.0 or greater, you will have to override .NET Core version using .NET Core Tool Installer task.

ArtırmakBoost

VM görüntüleri, ortam değişkeni tarafından belirlenen dizinde üst bilgilerini içeren önceden oluşturulmuş artırma kitaplıkları içerir BOOST_ROOT .The VM images contain prebuilt Boost libraries with their headers in the directory designated by BOOST_ROOT environment variable. Boost üst bilgilerini eklemek için yol, $BOOST_ROOT/include arama yollarına eklenmelidir.In order to include the Boost headers, the path $BOOST_ROOT/include should be added to the search paths.

Boost kitaplıklarıyla g + + çağırma örneği:Example of g++ invocation with Boost libraries:

g++ -I "$BOOST_ROOT/include" ...

VideolarVideos