本記事は、マイクロソフト社員によって公開されております。
こんにちは、Windows サポートチームの中森です。
PowerShell Gallery からモジュールをダウンロードする際には注意すべきいくつかの設定がございます。
今回は、そんなインストール時に必要な設定について、お悩みを解決する方法をご紹介しますので参考にいただけますと幸いです。
はじめに
Install-Module は PowerShell Gallery から、指定されたモジュールを検索、ダウンロード、インストールを行うコマンドレットです。
Install-Module 実行時にエラーが発生する場合、多くの要因は通信エラーとなりますので、後述の設定にてダウンロードが可能となるかどうかご確認ください。
<通信エラー時に表示されるエラー メッセージの一例>
1 | PS> Install-Module -Name <モジュール名> |
ご確認いただきたい設定
Install-Module の実行時にエラーが発生した場合、まずは、以下の 2 点をご確認ください。
1. プロキシ サーバー等で、必要なエンドポイントが制限されていないか
Install-Module コマンドレット実行時、対象のモジュールの検索やダウンロードのため、以下のエンドポイントへの接続が必要となります。
プロキシ サーバーや、ファイアウォール等で接続が許可されていない場合、接続を許可してからコマンドレットを実行してみてください。
psg-prod-centralus.azureedge.net
: CDN (Content Delivery Network) ホスト名psg-prod-eastus.azureedge.net
: CDN (Content Delivery Network) ホスト名az818661.vo.msecnd.net
: CDN (Content Delivery Network) ホスト名devopsgallerystorage.blob.core.windows.net
: ストレージ アカウントのホスト名*.powershellgallery.com
: Web サイトgo.microsoft.com
: リダイレクト サービスonegetcdn.azureedge.net
: PowerShellGet/PackageManagement の NuGet プロバイダーのブートストラップ
2. Install-Module 実行前に、権限やアクセス許可、 TLS 1.2 利用を設定する
プロキシ等で、必要なエンドポイントへの接続を許可しても、 Install-Module コマンドレットが成功しない場合、
PowerShell Gallery への明示的なアクセス許可や、接続方式を TLS 1.2 に変更してからコマンドレットを実行してみてください。
以下に、コマンドレット実行までにお試しいただきたい、実行例をご案内いたします。
1 | //現在のプロセスに限り、一時的に PowerShell 実行ポリシーを緩和します。 |
上記 2 点の確認でも事象が解消されない場合は、オフラインでのモジュール導入をご検討いただけますと幸いでございます。
オフラインでモジュールを導入する方法
Install-Module は上記までに説明した通り、接続するためのエンドポイントや、接続方法など考慮すべきポイントが多くあります。
日本の Enterprise で、ご利用の場合には、接続制限や設定変更を行えない場合もあるかと思います。
そんなとき、 Install-Module で対象モジュールの検索やダウンロードを手動で行い、インストールする方法もございます。
以下に、手順例をご紹介しますので、セキュリティ上、接続許可を変更できない場合や、設定変更を行ってもエラーとなる場合に、
お試しいただけますと幸いです。
1 | 1. PowerShell Gallery のページにアクセスします。 |
以上の情報が、 Install-Module を実行したい、ご利用者の皆様の一助となりますと幸いです。
関連記事
PowerShell Gallery
https://www.powershellgallery.com/
PowerShell ギャラリーの概要
https://docs.microsoft.com/ja-jp/powershell/scripting/gallery/getting-started?view=powershell-7.2
Install-Module コマンドレットのトラブルシューティング
https://docs.microsoft.com/ja-jp/powershell/scripting/gallery/how-to/getting-support/troubleshooting-cmdlets?view=powershell-7
PowerShell Gallery TLS Support について PowerShell 開発 Team の blog 情報
https://devblogs.microsoft.com/powershell/powershell-gallery-tls-support/
パッケージの手動ダウンロード
https://docs.microsoft.com/ja-JP/powershell/scripting/gallery/how-to/working-with-packages/manual-download?view=powershell-7.1
PowerShell モジュールをインポートする
https://docs.microsoft.com/ja-jp/powershell/scripting/developer/module/importing-a-powershell-module?view=powershell-7.1
本情報の内容 (添付文書、リンク先などを含む) は、作成日時点でのものであり、予告なく変更される場合があります。