dotnet-install scripts reference
Név
dotnet-install.ps1
| dotnet-install.sh
- A .NET SDK és a megosztott futtatókörnyezet telepítéséhez használt szkript.
Szinopszis
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] [-KeepZip] [-ZipPath <PATH>] [-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] [--keep-zip] [--zip-path <PATH>] [--verbose]
[--version <VERSION>]
dotnet-install.sh --help
A bash-szkript a PowerShell-kapcsolókat is olvassa, így a PowerShell-kapcsolókat Linux/macOS rendszereken is használhatja a szkripttel.
Leírás
A dotnet-install
szkriptek a .NET SDK nem rendszergazdai telepítését hajtják végre, amely tartalmazza a .NET CLI-t és a megosztott futtatókörnyezetet. Két szkript létezik:
- Windowson működő PowerShell-szkript. A telepítési utasításokért tekintse meg a Telepítés Windows rendszeren című témakört.
- Linux/macOS rendszeren működő bash-szkript. A telepítési utasításokért lásd : Telepítés Linux rendszeren és telepítés macOS rendszeren.
Feljegyzés
A .NET telemetriai adatokat gyűjt. További információkért és a letiltás módjáról a .NET SDK telemetriai adatairól olvashat.
Cél
A szkriptek célja a folyamatos integrációs (CI) forgatókönyvek használata, ahol:
Az SDK-t felhasználói beavatkozás és rendszergazdai jogosultságok nélkül kell telepíteni.
Az SDK telepítésének nem kell több CI-futtatáson keresztül megmaradnia.
Az események tipikus sorozata:
- A CI aktiválódik.
- A CI ezen szkriptek egyikével telepíti az SDK-t.
- A CI befejezi a munkát, és törli az ideiglenes adatokat, beleértve az SDK telepítését is.
Fejlesztési környezet beállításához vagy alkalmazások futtatásához használja a telepítőket a szkriptek helyett.
Ajánlott verzió
Javasoljuk, hogy a szkriptek stabil verzióját használja:
- Bash (Linux/macOS): https://dot.net/v1/dotnet-install.sh
- PowerShell (Windows): https://dot.net/v1/dotnet-install.ps1
A szkriptek forrása a dotnet/install-scripts GitHub-adattárban található.
Szkript viselkedése
Mindkét szkriptnek ugyanaz a viselkedése. Letöltik a ZIP/tarball fájlt a CLI buildcseppekből, és az alapértelmezett helyen vagy a megadott -InstallDir|--install-dir
helyen telepítik.
A telepítési szkriptek alapértelmezés szerint letöltik és telepítik az SDK-t. Ha csak a megosztott futtatókörnyezetet szeretné beszerezni, adja meg az -Runtime|--runtime
argumentumot.
Alapértelmezés szerint a szkript hozzáadja a telepítési helyet az aktuális munkamenet $PATH. Az argumentum megadásával felülbírálhatja ezt az alapértelmezett viselkedést -NoPath|--no-path
. A szkript nem állítja be a környezeti változót DOTNET_ROOT
.
Fontos
A szkript nem adja hozzá a telepítési helyet a felhasználó környezeti változóhoz PATH
, manuálisan kell hozzáadnia.
A szkript futtatása előtt telepítse a szükséges függőségeket.
Az argumentum használatával telepíthet egy adott verziót -Version|--version
. A verziót háromrészes verziószámként kell megadni, például 2.1.0
. Ha a verzió nincs megadva, a szkript telepíti a verziót latest
.
A telepítési szkriptek nem frissítik a beállításjegyzéket Windows rendszeren. Csak letöltik a tömörített bináris fájlokat, és átmásolják őket egy mappába. Ha frissíteni szeretné a beállításkulcs értékeit, használja a .NET-telepítőket.
Beállítások
-Architecture|--architecture <ARCHITECTURE>
A telepíteni kívánt .NET bináris fájlok architektúrája. A lehetséges értékek a következők
<auto>
: ,x64
amd64
,x86
,arm64
,arm
,s390x
ésppc64le
. Az alapértelmezett érték a<auto>
jelenleg futó operációsrendszer-architektúra.-AzureFeed|--azure-feed
Csak belső használatra. Lehetővé teszi egy másik tároló használatát az SDK-archívumok letöltéséhez. Ezt a paramétert csak akkor használja a rendszer, ha a --no-cdn hamis. Az alapértelmezett érték
https://dotnetcli.azureedge.net/dotnet
.-Channel|--channel <CHANNEL>
Megadja a telepítés forráscsatornáját. A lehetséges értékek a következők:
STS
: A legújabb standard kifejezéstámogatási kiadás.LTS
: A legutóbbi hosszú távú támogatási kiadás.- Kétrészes verzió A.B formátumban, amely egy adott kiadást jelöl (például
3.1
8.0
). - Háromrészes verzió A.B.Cxx formátumban, amely egy adott SDK-kiadást jelöl (például 8.0.1xx vagy 8.0.2xx). Az 5.0-s kiadás óta érhető el.
A
version
paraméter felülbírálja a paramétertchannel
, ha a nem használt verziótlatest
használja.Az alapértelmezett érték
LTS
. A .NET támogatási csatornáiról további információt a .NET támogatási szabályzat oldalán talál.-DryRun|--dry-run
Ha be van állítva, a szkript nem fogja végrehajtani a telepítést. Ehelyett megjeleníti a .NET CLI jelenleg kért verziójának konzisztens telepítéséhez használandó parancssort. Ha például megadja a verziót
latest
, megjelenik egy hivatkozás az adott verzióval, hogy ez a parancs determinisztikusan használható legyen egy buildszkriptben. A bináris hely is megjelenik, ha inkább saját maga szeretné telepíteni vagy letölteni.-FeedCredential|--feed-credential
Lekérdezési sztringként használható az Azure-hírcsatornához való hozzáfűzéshez. Lehetővé teszi az URL-cím módosítását nem nyilvános Blob Storage-fiókok használatára.
--help
Kiírja a szkript súgóját. Csak bash-szkriptre vonatkozik. A PowerShellhez használja a következőt
Get-Help ./dotnet-install.ps1
: .-InstallDir|--install-dir <DIRECTORY>
Megadja a telepítési útvonalat. A címtár akkor jön létre, ha nem létezik. Az alapértelmezett érték a %LocalAppData%\Microsoft\dotnet windowsos és $HOME/.dotnet Linux/macOS rendszeren. A bináris fájlok közvetlenül ebbe a könyvtárba kerülnek.
-JSonFile|--jsonfile <JSONFILE>
Megadja az SDK-verzió meghatározásához használt global.json fájl elérési útját. A global.json fájlnak a következő értékével kell rendelkeznie
sdk:version
: .-NoCdn|--no-cdn
Letiltja a letöltést az Azure Content Delivery Networkből (CDN), és közvetlenül használja a nem gyorsítótárazott hírcsatornát.
-NoPath|--no-path
Ha be van állítva, a telepítési mappa nem lesz exportálva az aktuális munkamenet elérési útjára. Alapértelmezés szerint a szkript módosítja a PATH-ot, ami a telepítés után azonnal elérhetővé teszi a .NET CLI-t.
-ProxyAddress
Ha be van állítva, a telepítő a proxyt használja a webes kérések során. (Csak Windows esetén érvényes.)
-ProxyBypassList <LIST_OF_URLS>
Ha be van állítva, azoknak a vesszővel
ProxyAddress
tagolt URL-címeknek a listáját adja meg, amelyek megkerülik a proxyt. (Csak Windows esetén érvényes.)-ProxyUseDefaultCredentials
Ha be van állítva, a telepítő az aktuális felhasználó hitelesítő adatait használja proxycím használatakor. (Csak Windows esetén érvényes.)
-Quality|--quality <QUALITY>
Letölti a megadott minőség legújabb buildét a csatornán. A lehetséges értékek a következők:
daily
,signed
,validated
,preview
ésGA
. A felhasználók többsége használjondaily
,preview
vagyGA
tulajdonságokat.A különböző minőségi értékek a telepített SDK vagy futtatókörnyezet kiadási folyamatának különböző szakaszait jelzik.
daily
: Az SDK vagy a Runtime legújabb buildjei. Minden nap épülnek, és nem tesztelik őket. Éles használatra nem ajánlottak, de gyakran használhatók bizonyos funkciók vagy javítások tesztelésére közvetlenül a termékbe való egyesítése után. Ezek a buildek azdotnet/installer
adattárból származnak, ezért ha javításokat keres,dotnet/sdk
várnia kell a kód áramlására, és egyesítenie kell őket az SDK-ból a Telepítőbe, mielőtt egy napi buildben megjelennek.signed
: A Microsoft által aláírt buildek, amelyek nincsenek érvényesítve vagy nyilvánosan közzéteve. Az aláírt buildek érvényesítésre, előzetes verzióra és GA-kiadásra jelölt buildek. Ez a minőségi szint nem nyilvános használatra készült.validated
: Azok a buildek, amelyek belső tesztelést végeztek rajtuk, de még nem jelentek meg előzetes verzióként vagy GA-ként. Ez a minőségi szint nem nyilvános használatra készült.preview
: A .NET következő, nyilvános használatra szánt verziójának havi nyilvános kiadásai. Éles használathoz nem ajánlott. Célja, hogy a felhasználók kísérletezhessenek és teszteljék az új főverziót a kiadás előtt.GA
: A .NET SDK és a Runtime végleges stabil kiadásai. Nyilvános használatra, valamint az éles környezet támogatására szolgál.
A
--quality
beállítás csak a következővel--channel
kombinálva működik, de nem alkalmazható a csatornákra ésLTS
aSTS
csatornákra, és figyelmen kívül lesz hagyva, ha az egyik ilyen csatornát használja.SDK-telepítéshez használjon
channel
olyan értéket, amely formátumaA.B
vagyA.B.Cxx
formátuma. Futásidejű telepítéshez használjachannel
a formátumotA.B
.Ne használjon mindkettőt
version
ésquality
paramétert. Haquality
meg van adva, a szkript önállóan határozza meg a megfelelő verziót.Az 5.0-s kiadás óta érhető el.
-Runtime|--runtime <RUNTIME>
Csak a megosztott futtatókörnyezetet telepíti, nem a teljes SDK-t. A lehetséges értékek a következők:
dotnet
: AMicrosoft.NETCore.App
megosztott futtatókörnyezet.aspnetcore
: AMicrosoft.AspNetCore.App
megosztott futtatókörnyezet.windowsdesktop
AMicrosoft.WindowsDesktop.App
megosztott futtatókörnyezet.
--os <OPERATING_SYSTEM>
Azt az operációs rendszert adja meg, amelyre az eszközök telepítve vannak. A lehetséges értékek a következők:
osx
,macos
,linux
,linux-musl
.freebsd
A paraméter nem kötelező, és csak akkor használható, ha felül kell bírálnia a szkript által észlelt operációs rendszert.
-SharedRuntime|--shared-runtime
Feljegyzés
Ez a paraméter elavult, és a szkript egy későbbi verziójában eltávolítható. A javasolt alternatíva a
-Runtime|--runtime
lehetőség.Csak a megosztott futtatókörnyezeti biteket telepíti, nem a teljes SDK-t. Ez a beállítás egyenértékű a beállítással
-Runtime|--runtime dotnet
.-SkipNonVersionedFiles|--skip-non-versioned-files
Kihagyja a nem verziószámozott fájlok( például dotnet.exe) telepítését, ha már léteznek.
-UncachedFeed|--uncached-feed
Csak belső használatra. Lehetővé teszi egy másik tároló használatát az SDK-archívumok letöltéséhez. Ezt a paramétert csak akkor használja a rendszer, ha a --no-cdn igaz.
-KeepZip|--keep-zip
Ha be van állítva, a letöltött SDK-archívum a telepítés után megmarad.
-ZipPath|--zip-path <PATH>
Ha be van állítva, a letöltött SDK-archívum a megadott elérési úton lesz tárolva.
-Verbose|--verbose
Diagnosztikai információkat jelenít meg.
-Version|--version <VERSION>
Egy adott buildverziót jelöl. A lehetséges értékek a következők:
latest
: Legújabb buildelés a csatornán (a-Channel
beállítással együtt használva).- Háromrészes verzió X.Y.Z formátumban, amely egy adott buildverziót jelöl; felülírja a
-Channel
beállítást. Például:2.0.0-preview2-006120
Ha nincs megadva,
-Version
az alapértelmezett érték a .latest
Példák
Telepítse a legújabb, hosszú távú támogatott (LTS) verziót az alapértelmezett helyre:
Windows:
./dotnet-install.ps1 -Channel LTS
macOS/Linux:
./dotnet-install.sh --channel LTS
Telepítse a 6.0.1xx SDK legújabb előzetes verzióját a megadott helyre:
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
Telepítse a megosztott futtatókörnyezet 6.0.0-s verzióját:
Windows:
./dotnet-install.ps1 -Runtime dotnet -Version 6.0.0
macOS/Linux:
./dotnet-install.sh --runtime dotnet --version 6.0.0
Szerezze be a szkriptet, és telepítse a 6.0.2-es verziót egy vállalati proxy mögé (csak Windows esetén):
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;
Szerezze be a szkriptet, és telepítse a .NET CLI egysoros példáit:
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>
Környezeti változók beállítása
A .NET manuális telepítése nem adja hozzá a környezeti változókat a rendszer egészében, és általában csak arra a munkamenetre működik, amelyben a .NET telepítve volt. Két környezeti változót kell beállítania az operációs rendszerhez:
DOTNET_ROOT
Ez a változó arra a mappára van állítva, amelybe a .NET telepítve volt, például
$HOME/.dotnet
Linux és macOS esetén, valamint$HOME\.dotnet
a Windows PowerShellben.PATH
Ennek a változónak tartalmaznia kell a
DOTNET_ROOT
mappát és a felhasználó .dotnet/tools mappáját is.$HOME/.dotnet/tools
Ez általában Linuxon és macOS-en, valamint$HOME\.dotnet\tools
a Windows PowerShellben történik.
Tipp.
Linux és macOS esetén a echo
parancs használatával állítsa be a rendszerhéjprofil változóit, például .bashrc:
echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
echo 'export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools' >> ~/.bashrc
Eltávolítás
Nincs eltávolítási szkript. A .NET manuális eltávolításáról további információt a .NET-futtatókörnyezet és az SDK eltávolítása című témakörben talál.
A dotnet-install.sh aláírás-ellenőrzése
Az aláírás-ellenőrzés fontos biztonsági intézkedés, amely segít biztosítani a szkriptek hitelességét és integritását. A szkript aláírásának ellenőrzésével meggyőződhet arról, hogy nem módosították, és megbízható forrásból származik.
Az alábbiakban részletes útmutatót talál a szkript gpg használatával történő hitelességének dotnet-install.sh
ellenőrzéséhez:
- Telepítse a GPG-t: A GPG (GNU Privacy Guard) egy ingyenes és nyílt forráskódú eszköz az adatok titkosításához és aláírásához. A telepítéshez kövesse a GPG webhelyén található utasításokat.
- Importálja a nyilvános kulcsot: Töltse le a telepítési szkriptek nyilvános kulcsfájlját , majd importálja a GPG-kulcstartóba a parancs futtatásával
gpg --import dotnet-install.asc
. - Töltse le az aláírási fájlt: A bash-szkript aláírási fájlja a következő címen
https://dot.net/v1/dotnet-install.sig
érhető el: . Letöltheti egy olyan eszközzel, mintwget
vagycurl
. - Ellenőrizze az aláírást: A bash-szkript aláírásának ellenőrzéséhez futtassa a parancsot
gpg --verify dotnet-install.sig dotnet-install.sh
. Ezzel ellenőrzi a fájl aláírásátdotnet-install.sh
a fájlban lévő aláírásondotnet-install.sig
. - Ellenőrizze az eredményt: Ha az aláírás érvényes, megjelenik egy üzenetet tartalmazó
Good signature from "Microsoft DevUXTeamPrague <devuxteamprague@microsoft.com>"
üzenet. Ez azt jelenti, hogy a szkriptet nem módosították, és megbízhatónak tekinthetők.
Környezet előkészítése
A GPG telepítése és a nyilvános kulcs importálása egyszeri művelet.
sudo apt install gpg
wget https://dot.net/v1/dotnet-install.asc
gpg --import dotnet-install.asc
Ha sikeres, a kimenetnek az alábbihoz hasonlóan kell megjelennie:
gpg: directory '/home/<user>/.gnupg' created
gpg: keybox '/home/<user>/.gnupg/pubring.kbx' created
gpg: /home/<user>/.gnupg/trustdb.gpg: trustdb created
gpg: key B9CF1A51FC7D3ACF: public key "Microsoft DevUXTeamPrague <devuxteamprague@microsoft.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
Letöltés és ellenőrzés
Az importált kulccsal letöltheti a szkriptet és az aláírást, majd ellenőrizheti, hogy a szkript megfelel-e az aláírásnak:
wget https://dot.net/v1/dotnet-install.sh
wget https://dot.net/v1/dotnet-install.sig
gpg --verify dotnet-install.sig dotnet-install.sh
Ha sikeres, a kimenetnek az alábbihoz hasonlóan kell megjelennie:
gpg: Signature made <datetime>
gpg: using RSA key B9CF1A51FC7D3ACF
gpg: Good signature from "Microsoft DevUXTeamPrague <devuxteamprague@microsoft.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 2B93 0AB1 228D 11D5 D7F6 B6AC B9CF 1A51 FC7D 3ACF
A figyelmeztetés azt jelenti, hogy nem bízik a kulcsírásban a nyilvános kulcsban, de a szkript továbbra is ellenőrzött. Az ellenőrző parancs által visszaadott kilépési kódnak sikeresnek kell lennie 0
.
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: