Wprowadzenie do galerii programu PowerShell
Galeria programu PowerShell to repozytorium pakietów zawierające skrypty, moduły i zasoby DSC, które można pobrać i wykorzystać. Polecenia cmdlet w module PowerShellGet służą do instalowania pakietów z galerii programu PowerShell. Nie musisz logować się, aby pobrać elementy z galerii programu PowerShell.
Nuta
Pakiet można pobrać bezpośrednio z galerii programu PowerShell, ale nie jest to zalecane podejście. Aby uzyskać więcej informacji, zobacz Ręczne pobieranie pakietów.
Odnajdywanie pakietów z galerii programu PowerShell
Pakiety można znaleźć w galerii programu PowerShell przy użyciu kontrolki wyszukiwania Find-Module
, Find-DscResource
i Find-Script
, w zależności od typu pakietu z -Repository PSGallery
.
Wyniki z galerii można filtrować przy użyciu następujących parametrów:
- Nazwa
- AllVersions
- Minimalna wersja
- RequiredVersion
- Znacznik
- Zawiera
- DscResource
- RoleCapability
- Polecenie
- Filtr
Jeśli interesuje Cię tylko odnajdywanie określonych zasobów DSC w galerii, możesz uruchomić polecenie cmdlet Find-DscResource
. Find-DscResource zwraca dane dotyczące zasobów DSC zawartych w galerii.
Ponieważ zasoby DSC są zawsze dostarczane w ramach modułu, nadal trzeba uruchomić Install-Module
, aby zainstalować te zasoby DSC.
Poznawanie pakietów w galerii programu PowerShell
Po zidentyfikowaniu interesującego Cię pakietu możesz dowiedzieć się więcej na ten temat. Możesz to zrobić, sprawdzając konkretną stronę pakietu w galerii. Na tej stronie będzie można zobaczyć wszystkie metadane przekazane za pomocą pakietu. Te metadane są dostarczane przez autora pakietu i nie są weryfikowane przez firmę Microsoft. Właściciel pakietu jest silnie powiązany z kontem galerii używanym do publikowania pakietu i jest bardziej godny zaufania niż pole Autor.
Jeśli odkryjesz pakiet, który nie zostanie opublikowany w dobrej wierze, kliknij pozycję Zgłoś nadużycie na stronie tego pakietu.
Jeśli używasz Find-Module
lub Find-Script
, możesz wyświetlić te dane w zwróconym obiekcie PSGetModuleInfo. Poniższy przykład zwraca dane w module PSReadLine w galerii.
Find-Module -Name PSReadLine -Repository PSGallery | Get-Member
Pobieranie pakietów z galerii programu PowerShell
Zachęcamy do następującego procesu podczas pobierania pakietów z galerii programu PowerShell:
Sprawdzić
Aby pobrać pakiet z galerii na potrzeby inspekcji, uruchom polecenie cmdlet Save-Module
lub Save-Script
w zależności od typu pakietu. Dzięki temu można zapisywać pakiet lokalnie bez jego instalowania i sprawdzać zawartość pakietu. Pamiętaj, aby ręcznie usunąć zapisany pakiet.
Niektóre z tych pakietów są tworzone przez firmę Microsoft, a inne są tworzone przez społeczność programu PowerShell. Firma Microsoft zaleca przejrzenie zawartości i kodu pakietów w tej galerii przed instalacją.
Jeśli odkryjesz pakiet, który nie zostanie opublikowany w dobrej wierze, kliknij pozycję Zgłoś nadużycie na stronie tego pakietu.
Instalować
Aby zainstalować pakiet z galerii do użycia, uruchom polecenie cmdlet Install-Module
lub Install-Script
w zależności od typu pakietu.
Install-Module
domyślnie instaluje moduł w celu $env:ProgramFiles\WindowsPowerShell\Modules
.
Wymaga to konta administratora. Jeśli dodasz parametr -Scope CurrentUser
, moduł zostanie zainstalowany w celu $HOME\Documents\WindowsPowerShell\Modules
.
Install-Script
domyślnie instaluje skrypt w celu $env:ProgramFiles\WindowsPowerShell\Scripts
.
Wymaga to konta administratora. Jeśli dodasz parametr -Scope CurrentUser
, skrypt zostanie zainstalowany w $HOME\Documents\WindowsPowerShell\Scripts
.
Domyślnie Install-Module
i Install-Script
instaluje najnowszą wersję pakietu. Aby zainstalować starszą wersję pakietu, dodaj parametr -RequiredVersion
.
Wdrożyć
Aby wdrożyć pakiet z galerii programu PowerShell w usłudze Azure Automation, kliknij pozycję Azure Automation, a następnie kliknij pozycję Wdróż w usłudze Azure Automation na stronie szczegółów pakietu. Nastąpi przekierowanie do portalu zarządzania Platformy Azure, w którym logujesz się przy użyciu poświadczeń konta platformy Azure. Należy pamiętać, że wdrażanie pakietów z zależnościami umożliwia wdrożenie wszystkich zależności w usłudze Azure Automation. Przycisk "Wdróż w usłudze Azure Automation" można wyłączyć, dodając tag AzureAutomationNotSupported do metadanych pakietu.
Aby dowiedzieć się więcej na temat usługi Azure Automation, zobacz dokumentację Azure Automation.
Aktualizowanie pakietów z galerii programu PowerShell
Aby zaktualizować pakiety zainstalowane z galerii programu PowerShell, uruchom polecenie cmdlet Update-Module
lub Update-Script
. Po uruchomieniu bez żadnych dodatkowych parametrów Update-Module
próbuje zaktualizować wszystkie moduły zainstalowane przez uruchomienie Install-Module
. Aby selektywnie aktualizować moduły, dodaj parametr -Name
.
Podobnie po uruchomieniu bez dodatkowych parametrów Update-Script
również próbuje zaktualizować wszystkie skrypty zainstalowane przez uruchomienie Install-Script
. Aby selektywnie zaktualizować skrypty, dodaj parametr -Name
.
Wyświetlanie listy pakietów zainstalowanych z galerii programu PowerShell
Aby dowiedzieć się, które moduły zostały zainstalowane z galerii programu PowerShell, uruchom polecenie cmdlet Get-InstalledModule
. To polecenie wyświetla listę wszystkich modułów zainstalowanych w systemie bezpośrednio z galerii programu PowerShell.
Podobnie, aby dowiedzieć się, które skrypty zostały zainstalowane w galerii programu PowerShell, uruchom polecenie cmdlet Get-InstalledScript
. To polecenie wyświetla listę wszystkich skryptów zainstalowanych w systemie bezpośrednio z galerii programu PowerShell.
Dostęp sieciowy do galerii programu PowerShell
Te nazwy hostów należy dodać do list dozwolonych, które kontrolują dostęp z sieci.
Hosty wymagane do odnajdywania i pobierania pakietów:
onegetcdn.azureedge.net
powershellgallery.azureedge.net
psg-prod-eastus.azureedge.net
Hosty wymagane podczas korzystania z witryny sieci Web galerii programu PowerShell:
-
*.powershellgallery.com
— witryna internetowa -
go.microsoft.com
iaka.ms
— usługi przekierowania
Ważny
Od kwietnia 2020 r. galeria programu PowerShell nie obsługuje już protokołu Transport Layer Security (TLS) w wersji 1.0 i 1.1. Jeśli nie używasz protokołu TLS 1.2 lub nowszego, podczas próby uzyskania dostępu do galerii programu PowerShell zostanie wyświetlony błąd. Użyj następującego polecenia, aby upewnić się, że używasz protokołu TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12
Aby uzyskać więcej informacji, zobacz anons w blogu programu PowerShell.
Powiązane linki
- Find-DscResource
- find-module
- find-script
- Get-InstalledModule
- Get-InstalledScript
- Install-Module
- install-script
- publish-module
- publikowania skryptu
- Register-PSRepository
- modułu zapisywania
- zapisywania skryptu
- Update-Module
- update-script
PowerShellGet & Gallery