Azure Pipelines Führen Sie den Agenten mit Docker aus.
Ein Dienst, der wie Jenkins erstellt / bereitgestellt wird.
Es ist ein Daemon, der den Erstellungs- und Bereitstellungsprozess tatsächlich als Reaktion auf Anweisungen von Azure Pipelines ausführt.
Azure Pipelines wird mit einer kostenlosen Version geliefert, es gibt jedoch ein monatliches Laufzeitlimit. Indem Sie Ihren eigenen Agenten vorbereiten, können Sie ihn ohne maximale Zeit verwenden.
Siehe die Azure Dev Ops-URL. Ich denke, es sieht aus wie "https: // dev.azure.com / hogehoge". Dies ist der Teil von hogehoge
.
Personal Access Token
Dies ist, was der Agent benötigt, um eine Verbindung zu Azure DevOps herzustellen.
Klicken Sie hier So erhalten Sie ein persönliches Zugriffstoken = Vorschauseite).
Legen Sie Folgendes als Bereich fest.
Das offizielle Bild von Micorosoft ist veraltet, also habe ich es erstellt, obwohl ich Angst habe. sengokyu/azure-pipelines-agent:latest Wie gewohnt ziehen.
docker pull sengokyu/azure-pipelines-agent
Geben Sie zum Zeitpunkt der Ausführung den Organisationsnamen und das im Voraus vorbereitete Personal Access Token als Umgebungsvariablen an.
Variablennamen | Wert |
---|---|
ORG | Name der Organisation |
TOKEN | Personal Access Token |
docker run -d -e TOKEN=${PAT} -e ORG=${ORG} sengokyu/azure-pipelines-agent
Bereitstellung mithilfe der ARM-Vorlage.
Dies ist der Ressourcendefinitionsteil der ARM-Vorlage. Das Ganze ist auf GitHub gestellt.
template.json
"resources": [
{
"name": "[parameters('containerGroupName')]",
"type": "Microsoft.ContainerInstance/containerGroups",
"apiVersion": "2019-12-01",
"location": "[resourceGroup().location]",
"properties": {
"containers": [
{
"name": "[parameters('agent')]",
"properties": {
"image": "[variables('containerImage')]",
"resources": {
"requests": {
"cpu": "[parameters('cpu')]",
"memoryInGb": "[parameters('memoryInGb')]"
}
},
"environmentVariables": [
{ "name": "TOKEN", "secureValue": "[parameters('token')]" },
{ "name": "ORG", "value": "[parameters('org')]" },
{ "name": "POOL", "value": "[parameters('pool')]" },
{ "name": "AGENT", "value": "[parameters('agent')]" }
]
}
}
],
"osType": "Linux",
"restartPolicy": "Never"
}
}
]
Erstellen Sie eine Datei, die jeden Parameter beschreibt.
parameters.json
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"containerGroupName": { "value": "vsts-agent" },
"pool": { "value": "Default" },
"agent": { "value": "vsts-agent-on-aci" },
"token": { "value": "YourPersonalAccessToken" },
"org": { "value": "YourOrganizationName" },
"cpu": { "value": 4 },
"memoryInGb": { "value": 8 }
}
}
Führen Sie den Befehl az aus.
az deployment group create -f template.json -p @parameters.json -g ResourceGroupName
Recommended Posts