Hostowanie własnych źródeł danych NuGet
Zamiast udostępniać pakiety publicznie, możesz chcieć wydać pakiety tylko do ograniczonej grupy odbiorców, takiej jak organizacja lub grupa robocza. Ponadto niektóre firmy mogą chcieć ograniczyć biblioteki innych firm, których mogą używać deweloperzy, a tym samym kierować tych deweloperów do czerpania z ograniczonego źródła pakietów, a nie nuget.org.
Dla wszystkich takich celów pakiet NuGet obsługuje konfigurowanie prywatnych źródeł pakietów w następujący sposób:
- Lokalne źródło danych: pakiety są po prostu umieszczane w odpowiednim sieciowym udziale plików, najlepiej używać
nuget init
inuget add
tworzyć hierarchiczną strukturę folderów (NuGet 3.3+). Aby uzyskać szczegółowe informacje, zobacz Lokalne źródła danych. - NuGet.Server: pakiety są udostępniane za pośrednictwem lokalnego serwera HTTP. Aby uzyskać szczegółowe informacje, zobacz NuGet.Server.
- Galeria NuGet: pakiety są hostowane na serwerze internetowym przy użyciu projektu galerii NuGet (github.com). Galeria NuGet udostępnia funkcje i zarządzanie użytkownikami, takie jak rozbudowany internetowy interfejs użytkownika, który umożliwia wyszukiwanie i eksplorowanie pakietów z poziomu przeglądarki, podobnie jak nuget.org.
Istnieje również kilka innych produktów hostingowych NuGet, takich jak Azure Artifacts i Rejestr pakietów GitHub, które obsługują zdalne prywatne źródła danych. Poniżej znajduje się lista takich produktów:
- Artifactory from JFrog (Artefaktory z pakietu JFrog).
- Usługa Azure Artifacts, która jest również dostępna w programie Team Foundation Server 2017 lub nowszym.
- BaGet, implementacja serwera NuGet v3 typu open source oparta na ASP.NET Core
- BaGetter, rozwidlenie typu open source i społeczności oparte na baGet
- Bytesafe W pełni zarządzana platforma zabezpieczeń pakietu i łańcucha dostaw
- Cloudsmith, w pełni zarządzane zarządzanie pakietami SaaS
- Feedz.io w pełni zarządzane zarządzanie pakietami SaaS
- Gitea, samoobsługowa usługa Git typu open source obsługuje pakiet NuGet jako rejestr pakietów
- Rejestr pakietów usługi GitHub
- Rejestr pakietów GitLab
- Przestrzeń JetBrains
- LiGet, implementacja serwera NuGet v2 typu open source, który działa na platformie Docker w systemie kestrel
- MyGet
- System operacyjny repozytorium Nexus z sonatype.
- NuGet Server (open source) — implementacja typu open source podobna do serwera NuGet inedo
- NuGet Server, projekt społeczności z Inedo
- ProGet z inedo
- Zestaw sleet, generator statycznego źródła danych NuGet w wersji 3 typu open source
- TeamCity firmy JetBrains.
Niezależnie od tego, jak pakiety są hostowane, uzyskujesz do nich dostęp, dodając je do listy dostępnych źródeł w programie NuGet.Config
. Można to zrobić w programie Visual Studio zgodnie z opisem w temacie Źródła pakietów lub z poziomu wiersza polecenia przy użyciu polecenia nuget sources
. Ścieżka do źródła może być lokalną nazwą ścieżki folderu, nazwą sieci lub adresem URL.