Windows Server 2016 に Docker をインストールするプロセスと発生した問題

Windows Server 2016 に Docker をインストールするプロセスと発生した問題

前提条件

Windows Server でコンテナーを実行するには、Windows Server (半期チャネル)、Windows Server 2019、または Windows Server 2016 を実行している物理サーバーまたは仮想マシンが必要です。

まずサーバーを更新することをお勧めします

Windows Server 2016 はすでに Docker テクノロジをサポートしており、公式情報も提供されています。

https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/quick-start-windows-server

一般的にこのリンクを参照することに問題はありませんが、まだ大きな落とし穴があります。
PowerShell を使用して sconfig を実行し、6 を選択して A と入力し、すべての更新プログラムをダウンロードします。

ここに画像の説明を挿入
ここに画像の説明を挿入

Dockerをインストールする

Windows Server に Docker をインストールするには、Microsoft が公開している DockerMicrosoftProvider という OneGet プロバイダー PowerShell モジュールを使用できます。 このプロバイダーは、Windows でコンテナー機能を有効にし、Docker エンジンとクライアントをインストールします。 やり方は次のとおりです:
管理者特権の PowerShell セッションを開き、PowerShell ギャラリーから Docker-Microsoft PackageManagement プロバイダーをインストールします。

インストールモジュール -名前 DockerMsftProvider -リポジトリ PSGallery -Force

NuGet プロバイダーをインストールするように求められたら、Y と入力してインストールします。
PackageManagement PowerShell モジュールを使用して最新バージョンの Docker をインストールします。

インストールパッケージ -Name docker -ProviderName DockerMsftProvider

PowerShell がパッケージ ソース「DockerDefault」を信頼するかどうかを尋ねたら、A と入力してインストールを続行します。
インストールが完了したら、コンピューターを再起動します。

コンピュータの再起動 - 強制

後で Docker を更新する場合は、次の手順を実行します。

  • Get-Package -Name Docker -ProviderName DockerMsftProvider使用します。
  • インストールされているバージョンを表示するには、 Find-Package -Name Docker -ProviderNameを使用します。
  • DockerMsftProvider現在のバージョンが準備できていることを確認したら、 Install-Package -Name Dockerを使用します。
  • ProviderName DockerMsftProvider -Update -Forceでアップグレードし、 Start-Service Dockerを実行します。

確認する

docker バージョンを入力してください:

PS C:\Users\Administrator> docker バージョン
クライアント: Docker Engine - エンタープライズ
バージョン: 19.03.5
APIバージョン: 1.40
Goバージョン: go1.12.12
Gitコミット: 2ee0c57608
作成日: 2019/11/13 08:00:16
OS/アーキテクチャ: windows/amd64
実験的: 偽

サーバー: Docker エンジン - エンタープライズ
エンジン:
バージョン: 19.03.5
API バージョン: 1.40 (最小バージョン 1.24)
Goバージョン: go1.12.12
Gitコミット: 2ee0c57608
作成日: 2019/11/13 07:58:51
OS/アーキテクチャ: windows/amd64
実験的: 偽

この時点で、Docker のインストールは完了です。次に、たとえば次のコマンドを実行して、いくつかの Docker ファイルをダウンロードして試すことができます。

docker run microsoft/dotnet-samples:dotnetapp-nanoserver

この例では、Docker ファイルを自動的にダウンロードして実行しますが、ダウンロード速度は非常に遅いです。ダウンロードが成功することを願っています。
次の紹介については、この記事を参照してください。
https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/quick-start-images

発生した問題

install-moduleを使用できません:

PS C:\Users\Administrator> Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Get-PSGalleryApiAvailability: PowerShell ギャラリーは現在利用できません。後でもう一度お試しください。
場所: C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:1711 文字数: 9
+ Get-PSGalleryApiAvailability -リポジトリ $Repository
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ カテゴリ情報: 無効な操作: (:) [Get-PSGalleryApiAvailability]、無効な操作例外
+ FullyQualifiedErrorId: PowerShellGalleryUnavailable、Get-PSGalleryApiAvailability

Get-PSGalleryApiAvailability: PowerShell ギャラリーは現在利用できません。後でもう一度お試しください。
場所: C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:4437 文字数: 9
+ Get-PSGalleryApiAvailability -リポジトリ $Name
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ カテゴリ情報: 無効な操作: (:) [Get-PSGalleryApiAvailability]、無効な操作例外
+ FullyQualifiedErrorId: PowerShellGalleryUnavailable、Get-PSGalleryApiAvailability

解決:
管理者として PowerShell を開き、次のコマンドを順番に入力します。

$ [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$ インストール-パッケージプロバイダー -名前 NuGet -最小バージョン 2.8.5.201 -Force
$ インストールモジュールposh-ssh

また、お使いのマシンがインターネットにアクセスできることを確認してください。

PS C:\Users\Administrator> [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
PS C:\Users\Administrator> Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force

名前 バージョン ソース 概要
---- ------- ------ -------
nuget 2.8.5.208 https://onege... OneGet メタパッケージ マネージャーの NuGet プロバイダー

PS C:\Users\Administrator> Install-Module posh-ssh

参考文献:

[1] https://cloud.tencent.com/developer/article/1378641

[2] https://docs.microsoft.com/zh-cn/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server

Windows Server 2016 への Docker のインストールに関するこの記事はこれで終わりです。Windows Server 2016 への Docker のインストールの詳細については、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • RocketMQ の Docker インストールとインストール中に発生した問題の解決策
  • Docker-compose インストール yml ファイルの設定方法
  • dockerにros2をインストールするための詳細な手順
  • CentOS 8にdockerをインストールする最も詳細な方法
  • Dockerにlogstashをインストールする詳細な手順
  • Docker のクイックインストール手順チュートリアル

<<:  Vueコンポーネント間のデータ共有の詳細な説明

>>:  HTML 選択オプション デフォルトの選択方法

推薦する

MySQLのLIMIT文について詳しく説明します

目次質問サーバー層とストレージエンジン層LIMITって何ですか?何をするか?トゥカオ最近、Q&...

Docker が elasticsearch を起動するときのメモリ不足の問題と解決策

質問Docker が elasticsearch をインストールして起動するときにメモリが不足するシ...

MYSQLクエリデータの結果に自動的に番号を付ける方法

序文実際、クエリ中に結果に番号が付けられるこのような状況に遭遇したことは一度もありません。同僚が転職...

jQuery はテーブルのページング効果を実装します

この記事では、テーブルのページング効果を実現するためのjQueryの具体的なコードを参考までに紹介し...

自分のブログを構築しながら学んだこと

<br />ブログを始めて 1 年、私はブログの内外で多くのことを個人的に学びました。ま...

Vue組み込みコンポーネントのキープアライブの使用例

目次1. キープアライブの使用使用例: 1. すべてのページをキャッシュする: 2. 条件に基づいて...

MySQL 8.0.20 Window10無料インストール版設定とNavicat管理チュートリアルグラフィック詳細説明

1. MySQL 8.0.20をダウンロードして解凍するダウンロードリンク: https://dev...

デジタル時計効果を実現するJavaScript

この記事では、デジタル時計効果を実現するためのJavaScriptの具体的なコードを参考までに紹介し...

コードレイン効果を実現するJavaScriptキャンバス

この記事では、コードレイン効果を実現するためのキャンバスの具体的なコードを参考までに共有します。具体...

Javascript Bootstrapのグリッドシステム、ナビゲーションバー、カルーセルの詳細な説明

目次ブートストラップと関連コンテンツの紹介グリッドシステムネストされた列列オフセット列の並べ替えナビ...

Vue の nextTick について話す

データが変更されても、DOM ビューはすぐには更新されません。変更直後にノードまたはその値を取得しよ...

MySQL 5.7 をインストールした後にコマンドライン ウィンドウを開くとクラッシュする問題の解決方法

序文最近、MySQL 5.7 をインストールしましたが、問題が見つかりました。コマンド ライン ウィ...

入力ボックスのプレースホルダーアニメーションと入力検証を実現する純粋なCSS

さらに興味深いコンテンツについては、https://github.com/abc-club/free...

MySQL 8.0.12 のインストールと使用方法のチュートリアル

MySQL 8.0.12のインストールと使用のチュートリアルを録画しました。ウィンドウズまず、公式ウ...

Windows システムの MySQL が中国語を入力および表示できない問題の解決方法

ステップ 1: メモ帳を使用して、MySQL インストール ディレクトリの「my.ini」ファイルを...