Naslaginformatie over dotnet-install-scripts

Name

dotnet-install.ps1 | dotnet-install.sh - Script dat wordt gebruikt om de .NET SDK en de gedeelde runtime te installeren.

Synopsis

Windows:

dotnet-install.ps1 [-Architecture <ARCHITECTURE>] [-AzureFeed]
    [-Channel <CHANNEL>] [-DryRun] [-FeedCredential]
    [-InstallDir <DIRECTORY>] [-JSonFile <JSONFILE>]
    [-NoCdn] [-NoPath] [-ProxyAddress] [-ProxyBypassList <LIST_OF_URLS>]
    [-ProxyUseDefaultCredentials] [-Quality <QUALITY>] [-Runtime <RUNTIME>]
    [-SkipNonVersionedFiles] [-UncachedFeed] [-Verbose]
    [-Version <VERSION>]

Get-Help ./dotnet-install.ps1

Linux/macOS:

dotnet-install.sh  [--architecture <ARCHITECTURE>] [--azure-feed]
    [--channel <CHANNEL>] [--dry-run] [--feed-credential]
    [--install-dir <DIRECTORY>] [--jsonfile <JSONFILE>]
    [--no-cdn] [--no-path] [--quality <QUALITY>]
    [--runtime <RUNTIME>] [--runtime-id <RID>]
    [--skip-non-versioned-files] [--uncached-feed] [--verbose]
    [--version <VERSION>]

dotnet-install.sh --help

Het bash-script leest ook PowerShell-switches, zodat u PowerShell-switches kunt gebruiken met het script op Linux-/macOS-systemen.

Description

De dotnet-install scripts voeren een installatie van niet-beheerders uit van de .NET SDK, waaronder de .NET CLI en de gedeelde runtime. Er zijn twee scripts:

  • Een PowerShell-script dat werkt in Windows.
  • Een bash-script dat werkt op Linux/macOS.

Notitie

.NET verzamelt telemetriegegevens. Zie .NET SDK-telemetrie voor meer informatie en hoe u zich afmeldt.

Doel

Het beoogde gebruik van de scripts is voor CI-scenario's (Continuous Integration), waarbij:

  • De SDK moet worden geïnstalleerd zonder tussenkomst van de gebruiker en zonder beheerdersrechten.

  • De SDK-installatie hoeft niet te worden bewaard in meerdere CI-uitvoeringen.

    De typische reeks gebeurtenissen:

    • CI wordt geactiveerd.
    • CI installeert de SDK met behulp van een van deze scripts.
    • CI voltooit het werk en wist tijdelijke gegevens, inclusief de SDK-installatie.

Als u een ontwikkelomgeving wilt instellen of apps wilt uitvoeren, gebruikt u de installatieprogramma's in plaats van deze scripts.

U wordt aangeraden de stabiele versie van de scripts te gebruiken:

Scriptgedrag

Beide scripts hebben hetzelfde gedrag. Ze downloaden het ZIP/tarball-bestand van de CLI-build en gaan verder met het installeren op de standaardlocatie of op een locatie die is opgegeven door -InstallDir|--install-dir.

Standaard downloaden de installatiescripts de SDK en installeren deze. Als u alleen de gedeelde runtime wilt verkrijgen, geeft u het -Runtime|--runtime argument op.

Standaard voegt het script de installatielocatie toe aan de $PATH voor de huidige sessie. Overschrijf dit standaardgedrag door het -NoPath|--no-path argument op te geven. Het script stelt de DOTNET_ROOT omgevingsvariabele niet in.

Voordat u het script uitvoert, installeert u de vereiste afhankelijkheden.

U kunt een specifieke versie installeren met behulp van het -Version|--version argument. De versie moet worden opgegeven als een driedelige versienummer, zoals 2.1.0. Als de versie niet is opgegeven, installeert het script de latest versie.

De installatiescripts werken het register niet bij in Windows. Ze downloaden alleen de gezipte binaire bestanden en kopiëren ze naar een map. Als u wilt dat registersleutelwaarden worden bijgewerkt, gebruikt u de .NET-installatieprogramma's.

Opties

  • -Architecture|--architecture <ARCHITECTURE>

    Architectuur van de binaire .NET-bestanden die moeten worden geïnstalleerd. Mogelijke waarden zijn <auto>, amd64, x64, x86, , en armarm64. De standaardwaarde is <auto>, die de huidige besturingssysteemarchitectuur vertegenwoordigt.

  • -AzureFeed|--azure-feed

    Alleen voor intern gebruik. Hiermee staat u het gebruik van een andere opslag toe om SDK-archieven te downloaden. Deze parameter wordt alleen gebruikt als --no-cdn onwaar is. De standaardwaarde is https://dotnetcli.azureedge.net/dotnet.

  • -Channel|--channel <CHANNEL>

    Hiermee geeft u het bronkanaal voor de installatie. De mogelijke waarden zijn:

    • Current - Meest recente release.
    • LTS - Long-Term Ondersteuningskanaal (meest recente ondersteunde release).
    • Tweedelige versie in A.B-indeling, die een specifieke release vertegenwoordigt (bijvoorbeeld 3.16.0).
    • Driedelige versie in A.B.Cxx-indeling, die een specifieke SDK-release vertegenwoordigt (bijvoorbeeld 6.0.1xx of 6.0.2xx). Beschikbaar sinds de release van 5.0.

    De version parameter overschrijft de channel parameter wanneer een andere versie dan latest wordt gebruikt.

    De standaardwaarde is LTS. Zie de pagina .NET-ondersteuningsbeleid voor meer informatie over .NET-ondersteuningskanalen.

  • -DryRun|--dry-run

    Als dit is ingesteld, wordt de installatie niet uitgevoerd door het script. In plaats daarvan wordt weergegeven welke opdrachtregel moet worden gebruikt om de momenteel aangevraagde versie van de .NET CLI consistent te installeren. Als u bijvoorbeeld versie latestopgeeft, wordt er een koppeling met de specifieke versie weergegeven, zodat deze opdracht deterministisch kan worden gebruikt in een buildscript. Ook wordt de locatie van het binaire bestand weergegeven als u deze zelf wilt installeren of downloaden.

  • -FeedCredential|--feed-credential

    Wordt gebruikt als een querytekenreeks om toe te voegen aan de Azure-feed. Hiermee kunt u de URL wijzigen om niet-openbare Blob Storage-accounts te gebruiken.

  • --help

    Hiermee wordt help voor het script afgedrukt. Alleen van toepassing op bash-script. Gebruik Get-Help ./dotnet-install.ps1voor PowerShell .

  • -InstallDir|--install-dir <DIRECTORY>

    Hiermee geeft u het installatiepad. De map wordt gemaakt als deze niet bestaat. De standaardwaarde is %LocalAppData%\Microsoft\dotnet in Windows en $HOME/.dotnet in Linux/macOS. Binaire bestanden worden rechtstreeks in deze map geplaatst.

  • -JSonFile|--jsonfile <JSONFILE>

    Hiermee geeft u een pad naar een global.json-bestand dat wordt gebruikt om de SDK-versie te bepalen. Het bestand global.json moet een waarde hebben voor sdk:version.

  • -NoCdn|--no-cdn

    Hiermee wordt het downloaden van het Azure Content Delivery Network (CDN) uitgeschakeld en wordt de niet-cachefeed rechtstreeks gebruikt.

  • -NoPath|--no-path

    Als deze optie is ingesteld, wordt de installatiemap niet geëxporteerd naar het pad voor de huidige sessie. Standaard wijzigt het script het PAD, waardoor de .NET CLI direct na de installatie beschikbaar wordt.

  • -ProxyAddress

    Indien ingesteld, gebruikt het installatieprogramma de proxy bij het indienen van webaanvragen. (Alleen geldig voor Windows.)

  • -ProxyBypassList <LIST_OF_URLS>

    Als deze optie is ingesteld ProxyAddress, geeft u een lijst met door komma's gescheiden URL's op waarmee de proxy wordt overgeslagen. (Alleen geldig voor Windows.)

  • ProxyUseDefaultCredentials

    Indien ingesteld, gebruikt het installatieprogramma de referenties van de huidige gebruiker bij het gebruik van het proxyadres. (Alleen geldig voor Windows.)

  • -Quality|--quality <QUALITY>

    Hiermee downloadt u de nieuwste build van de opgegeven kwaliteit in het kanaal. De mogelijke waarden zijn: daily, signedvalidated, , , preview. GA Werkt alleen in combinatie met channel. Niet van toepassing op huidige en LTS-kanalen en wordt genegeerd als een van deze kanalen wordt gebruikt.

    Gebruik channel voor een SDK-installatie in A.B of A.B.Cxx indeling. Gebruik channel voor een runtime-installatie de A.B indeling.

    Gebruik niet zowel als versionquality parameters. Wanneer quality dit is opgegeven, bepaalt het script zelf de juiste versie.

    Beschikbaar sinds de release van 5.0.

  • -Runtime|--runtime <RUNTIME>

    Installeert alleen de gedeelde runtime, niet de volledige SDK. De mogelijke waarden zijn:

    • dotnet - de Microsoft.NETCore.App gedeelde runtime.
    • aspnetcore - de Microsoft.AspNetCore.App gedeelde runtime.
    • windowsdesktop - de Microsoft.WindowsDesktop.App gedeelde runtime.
  • --os <OPERATING_SYSTEM>

    Hiermee geeft u het besturingssysteem waarvoor de hulpprogramma's worden geïnstalleerd. Mogelijke waarden zijn: osx, linux, linux-musl. freebsd

    De parameter is optioneel en mag alleen worden gebruikt wanneer het is vereist om het besturingssysteem te overschrijven dat door het script wordt gedetecteerd.

  • -SharedRuntime|--shared-runtime

    Notitie

    Deze parameter is verouderd en kan worden verwijderd in een toekomstige versie van het script. Het aanbevolen alternatief is de -Runtime|--runtime optie.

    Hiermee worden alleen de gedeelde runtime-bits geïnstalleerd, niet de volledige SDK. Deze optie is gelijk aan het -Runtime|--runtime dotnetopgeven van .

  • -SkipNonVersionedFiles|--skip-non-versioned-files

    Hiermee wordt het installeren van niet-versiebeheerde bestanden, zoals dotnet.exe, overgeslagen als deze al bestaan.

  • -UncachedFeed|--uncached-feed

    Alleen voor intern gebruik. Hiermee kunt u een andere opslag gebruiken om SDK-archieven van te downloaden. Deze parameter wordt alleen gebruikt als --no-cdn waar is.

  • -Verbose|--verbose

    Geeft diagnostische informatie weer.

  • -Version|--version <VERSION>

    Vertegenwoordigt een specifieke buildversie. De mogelijke waarden zijn:

    • latest - Meest recente build op het kanaal (gebruikt met de -Channel optie).
    • Driedelige versie in X.Y.Z-indeling die een specifieke buildversie vertegenwoordigt; vervangt de -Channel optie. Bijvoorbeeld: 2.0.0-preview2-006120.

    Als dit niet is opgegeven, -Version wordt standaard ingesteld op latest.

Voorbeelden

  • Installeer de meest recente ltS-versie (long-term supported) op de standaardlocatie:

    Windows:

    ./dotnet-install.ps1 -Channel LTS
    

    macOS/Linux:

    ./dotnet-install.sh --channel LTS
    
  • Installeer de nieuwste preview-versie van de 6.0.1xx SDK op de opgegeven locatie:

    Windows:

    ./dotnet-install.ps1 -Channel 6.0.1xx -Quality preview -InstallDir C:\cli
    

    macOS/Linux:

    ./dotnet-install.sh --channel 6.0.1xx --quality preview --install-dir ~/cli
    
  • Installeer de versie 6.0.0 van de gedeelde runtime:

    Windows:

    ./dotnet-install.ps1 -Runtime dotnet -Version 6.0.0
    

    macOS/Linux:

    ./dotnet-install.sh --runtime dotnet --version 6.0.0
    
  • Download het script en installeer de versie 6.0.2 achter een bedrijfsproxy (alleen Windows):

    Invoke-WebRequest 'https://dot.net/v1/dotnet-install.ps1' -Proxy $env:HTTP_PROXY -ProxyUseDefaultCredentials -OutFile 'dotnet-install.ps1';
    ./dotnet-install.ps1 -InstallDir '~/.dotnet' -Version '6.0.2' -Runtime 'dotnet' -ProxyAddress $env:HTTP_PROXY -ProxyUseDefaultCredentials;
    
  • Download script en installeer voorbeelden van .NET CLI-one-liners:

    Windows:

    # Run a separate PowerShell process because the script calls exit, so it will end the current PowerShell session.
    &powershell -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://dot.net/v1/dotnet-install.ps1'))) <additional install-script args>"
    

    macOS/Linux:

    curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin <additional install-script args>
    

Variabelen voor enviornment instellen

Als u .NET handmatig installeert, worden de omgevingsvariabelen niet systeembreed toegevoegd en werkt doorgaans alleen voor de sessie waarin .NET is geïnstalleerd. Er zijn twee omgevingsvariabelen die u moet instellen voor uw besturingssysteem:

  • DOTNET_ROOT

    Deze variabele is ingesteld op de map .NET waarop, zoals $HOME/.dotnet voor Linux en macOS, en $HOME\.dotnet in PowerShell voor Windows is geïnstalleerd.

  • PATH

    Deze variabele moet zowel de DOTNET_ROOT map als de map .dotnet/tools van de gebruiker bevatten. Over het algemeen is $HOME/.dotnet/tools dit in Linux en macOS en $HOME\.dotnet\tools in PowerShell in Windows.

Tip

Gebruik voor Linux en macOS de echo opdracht om de variabelen in uw shell-profiel in te stellen, zoals .bashrc:

echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
echo 'export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools' >> ~/.bashrc

Zie ook