Condividi tramite


Eseguire un agente self-hosted dietro un proxy Web

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Quando l'agente self-hosted richiede un proxy Web, è possibile informare l'agente sul proxy durante la configurazione. In questo modo l'agente può connettersi ad Azure Pipelines o TFS tramite il proxy. Ciò consente all'agente di ottenere le origini e scaricare gli artefatti. Infine, passa i dettagli del proxy alle attività che necessitano anche di impostazioni proxy per raggiungere il Web.

Azure Pipelines, TFS 2018 RTM e versioni successive

Si applica alla versione dell'agente 2.122 e successive.

Per abilitare l'esecuzione dell'agente dietro un proxy Web, passare --proxyurl, --proxyusername e --proxypassword durante la configurazione dell'agente.

Per esempio:

./config.cmd --proxyurl http://127.0.0.1:8888 --proxyusername "myuser" --proxypassword "mypass"

Le credenziali proxy vengono archiviate in modo responsabile in ogni piattaforma per evitare perdite accidentali. In Linux, le credenziali vengono crittografate con una chiave simmetrica in base all'ID computer. In macOS utilizziamo il Keychain. In Windows, utilizziamo l'archivio delle credenziali.

Nota

La versione dell'agente 122.0, fornita con TFS 2018 RTM, presenta un problema noto durante la configurazione come servizio in Windows. Poiché Windows Credential Store è per utente, è necessario configurare l'agente usando lo stesso utente che il servizio eseguirà. Ad esempio, per configurare il servizio agente eseguito come mydomain\buildadmin, è necessario avviare config.cmd come mydomain\buildadmin. A tale scopo, accedere al computer con l'utente o usare Run as a different user nella shell di Windows.

Come l'agente gestisce il proxy all'interno di un job di compilazione o rilascio

L'agente parlerà con il servizio Azure DevOps/TFS tramite il proxy Web specificato nel .proxy file.

Poiché anche il codice per l'attività Get Source nelle attività di compilazione e per l'attività Download Artifact nelle versioni viene inserito nell'agente, tali attività seguiranno la configurazione del proxy dell'agente dal file .proxy.

L'agente espone la configurazione proxy tramite variabili di ambiente per ogni esecuzione di attività. Gli autori di attività devono usare i metodi azure-pipelines-task-lib per recuperare la configurazione del proxy e gestire il proxy all'interno dell'attività.

Si noti che molti strumenti non usano automaticamente le impostazioni proxy configurate dall'agente. Ad esempio, strumenti come curl e dotnet potrebbero richiedere l'impostazione sulla macchina anche di variabili di ambiente proxy come http_proxy.

Specificare gli URL di bypass del proxy

Creare un .proxybypass file nella directory radice dell'agente che specifica le espressioni regolari (nella sintassi ECMAScript) in modo che corrispondano agli URL che devono ignorare il proxy. Per esempio:

github\.com
bitbucket\.com