Hosten Eigener NuGet-Feeds
Anstatt Pakete öffentlich verfügbar zu machen, sollten Sie Pakete nur für eine begrenzte Zielgruppe freigeben, z. B. Ihre Organisation oder Arbeitsgruppe. Darüber hinaus möchten einige Unternehmen möglicherweise einschränken, welche Drittanbieterbibliotheken ihre Entwickler verwenden können, und leiten sie daher an, aus einer begrenzten Paketquelle zu ziehen, anstatt nuget.org.
Für alle diese Zwecke unterstützt NuGet das Einrichten privater Paketquellen auf folgende Weise:
- Lokaler Feed: Softwarepakete werden einfach auf einem geeigneten Netzlaufwerk platziert, idealerweise unter Verwendung von
nuget init
undnuget add
, um eine hierarchische Ordnerstruktur zu erstellen (NuGet 3.3+). Weitere Informationen finden Sie unter Lokalen Feeds. - NuGet.Server: Pakete werden über einen lokalen HTTP-Server verfügbar gemacht. Ausführliche Informationen finden Sie unter NuGet.Server-.
- NuGet Gallery: Pakete werden auf einem Internetserver mit dem NuGet Gallery Projekt (github.com) gehostet. NuGet Gallery bietet Benutzerverwaltung und Features wie eine umfangreiche Web-UI, die das Durchsuchen und Erkunden von Paketen aus dem Browser ermöglicht, ähnlich wie nuget.org.
Es gibt auch mehrere andere NuGet-Hostingprodukte wie Azure Artifacts und GitHub-Paketregistrierung, die private Remotefeeds unterstützen. Nachfolgend finden Sie eine Liste solcher Produkte:
- Artifactory von JFrog.
- Azure Artifacts, das auch auf Team Foundation Server 2017 und höher verfügbar ist.
- BaGet, eine Open-Source-Implementierung von NuGet V3-Server, der auf ASP.NET Core basiert
- BaGetter, eine Open Source- und Community-gesteuerte Fork von BaGet
- Bytesafe Eine vollständig verwaltete Paket- und Lieferketten-Sicherheitsplattform
- Cloudsmith, eine vollständig verwaltete Paketverwaltung SaaS
- Feedz.io eines vollständig verwalteten Paketverwaltung SaaS
- Gitea, ein Open-Source und selbst hostbarer Git-Dienst, unterstützt NuGet als Paket-Registry
- GitHub-Paketregistrierung
- GitLab-Paketregistrierung
- JetBrains Space
- LiGet-, eine Open-Source-Implementierung von NuGet V2-Server, der auf Kestrel in Docker ausgeführt wird
- MyGet
- Nexus Repository OSS von Sonatype.
- NuGet Server (Open Source), eine Open-Source-Implementierung ähnlich dem NuGet-Server von Inedo
- NuGet Server, ein Communityprojekt von Inedo
- ProGet aus Inedo
- Sleet, ein statischer NuGet V3-Feed-Generator für Open Source
- TeamCity von JetBrains.
- RepoFlow-, eine einfache und benutzerfreundliche Paketverwaltungsplattform.
Unabhängig davon, wie Pakete gehostet werden, greifen Sie darauf zu, indem Sie sie der Liste der verfügbaren Quellen in NuGet.Config
hinzufügen. Dies kann in Visual Studio erfolgen, wie in Paketquellenbeschrieben, oder über die Befehlszeile mit nuget sources
. Der Pfad zu einer Quelle kann ein lokaler Ordnerpfadname, ein Netzwerkname oder eine URL sein.