GNU/Linux >> Linux の 問題 >  >> Panels >> Docker

Windows 10 の Windows System for Linux (WSL2) 内で Docker をセットアップする方法

私は WSL2 について書いてきましたが、それは何度も輝かしい驚異です。リリースが (おそらく) 近づくにつれて (この記事を書いている時点では、Windows Insider のスロー アンド ファストに掲載されています)、いくつかの投稿を更新したいと思います。 WSL と Docker に関するいくつかのクールなことについてブログに書きました

  • Docker Desktop for WSL 2 は、Windows 10 と Linux をさらに緊密に統合します
  • Windows 上の Visual Studio から WSL2 で .NET Core Linux アプリをリモート デバッグする
  • あなた (または私) が知らなかったクールな WSL (Linux 用 Windows サブシステム) のヒントとコツ
  • Ruby on Rails on Windows は単に可能であるだけでなく、WSL2 と VS Code を使用すると素晴らしいものになります
  • インポートとエクスポートを使用して、Windows 10 マシン間で WSL ディストリビューションを簡単に移動できます。
  • コンソール、ターミナル、シェルの違いは何ですか?

ちょっとした HanselFAQ はこちら といくつかのリソース。

Windows で Linux を実行したい

確かに、HyperV または VirtualBox を使用して、標準の仮想マシンを実行できます。 ISO をダウンロードしてマウントし、「正方形内の正方形」を実行します。 Windows 内にシームレスに統合されるわけではありませんが、映画のインセプションのようになりますが、実績はあります。

できれば、WSL または WSL2 をインストールしてください。お使いの Windows 10 が最新の状態であれば、5 ~ 10 分ほどかかります。

  • Windows 10 に WSL をインストールする方法
    • WSL には Linux カーネルは含まれていません。 Linux ファイル システムへのアクセスはやや遅いですが、Windows ファイルへのアクセスは非常に高速です。 Cygwin を使用している場合は、これが気に入るはずです。これは実際には Linux であり、カーネルだけがエミュレートされているからです。
  • Windows 10 に WSL2 をインストールする方法
    • WSL2 には実際の Linux カーネルが付属しており、その Linux ファイル システムは WSL よりも 5 倍から 10 倍高速です。 WSL2 はメモリを拡張する小さなユーティリティ VM を使用し、wsl コマンド ラインでディストリビューションを管理できます。
    • Windows で VS Code を使用しながら、すべての開発作業をここで行います。すごい。 WSL2 でフレンドをセットアップする様子を YouTube でライブ配信します。

Windows から Linux に SSH 接続したい

Putty をインストールするように指示する Web サイトは 15 年間ありますが、必要ない場合もあります。 OpenSSH は、2 年以上にわたって Windows 10 に搭載されています。それらは Windows の機能で追加できますが、必要に応じてリリースを取得して PATH に追加することもできます。

Windows 10 に組み込まれている OpenSSH を使用して、リモートの Linux マシンに自動的に SSH で接続するようにキーを設定することもできます。また、Windows で YubiKey NEO と GPG および Keybase を使用して署名付き Git コミットをセットアップすることも好きです。

Windows のより優れたターミナルが必要

新しい Windows ターミナルはあなたのためのものです。今すぐ Windows ターミナルを無料でダウンロードしてください。オープンソースです。次に、上記から Win64/Win32 ssh を実行するか、任意の Linux ディストリビューション SSH を実行できます。楽しむ。時間です。

<ブロック引用>

注:おそらくしばらく前に、ターミナルをダウンロードしましたか? profile.json を削除して最初からやり直す必要があるほど十分に変更されています。

Windows ターミナルは、Microsoft Store または GitHub リリース ページからダウンロードできます。非公式の Chocolatey リリースもあります。できればストア版をお勧めします。

プロンプトとフォントが見にくい

それらをきれいにします。あなたは最高に値します。 Cascadia Code の CascadiaPL.ttf と PowerLine を入手して、キンポウゲを締めます。素敵なテーマとおそらく GIF 背景を入手してください。

Windows で Docker を使用したいのですが、それがうまくいかないようにしたい

驚き、それは実際に素晴らしいです。数年前に Windows で Docker を使用するのにいくつかの課題があり、あきらめたかもしれませんが、戻ってきてください。 Windows 上の Docker には、巨大な (そして魅力的な) アーキテクチャがあります。 WSL2 を使用している場合は、非常にうまく統合されています。

WSL2 が適切にセットアップされている場合は、Docker Desktop WSL2 を入手してください。このバージョンの Docker for Windows はエンジンとして WSL2 を使用しており、同じマシン上の Windows と Linux で Docker コンテキストを共有できます。メーカーの意図通り!

<ブロック引用>

WSL 2 は、Microsoft によって構築された完全な Linux カーネルであるため、大幅なアーキテクチャの変更を導入し、Linux コンテナーをエミュレーションなしでネイティブに実行できるようにします。 WSL 2 で実行されている Docker Desktop を使用すると、ユーザーは Linux ワークスペースを活用して、Linux と Windows の両方のビルド スクリプトを維持する必要がなくなります。

つまり

<オール>
  • Windows 10 Insider Preview ビルド 19018 以降をインストールする
  • Windows で WSL 2 機能を有効にします。詳細な手順については、Microsoft のドキュメントを参照してください。
  • Docker Desktop Edge 2.1.6.0 以降のリリースをダウンロードします。
  • デフォルトの WSL インスタンスが WSL2 であることを確認します。 wsl -l -v でそれを行うことができます 、そして wsl --set-version  <distro> 2

    次に、Docker Desktop for Windows 内で確認することが 2 つあります。まず、バックエンドとして WSL2 を使用していますか?

    そして、よく見落とされがちなセットアップについては、[リソース] | [リソース] の下を確認してください。 WSL 統合を開き、Docker へのアクセスに使用する WSL2 ディストリビューションを Docker に伝えます。注意を払っていれば、Docker Desktop がアクション センターで通知を表示しようとしていることに気付くかもしれませんが、見逃す可能性があります。

    注:初期の Tech Preview を使用した場合は、"wsl" という名前の追加の Docker コンテキストが残っている可能性があります。 WSL ではなく、Default を使用します。

    これは直感的でも自明でもなく、次のような奇妙なエラーが発生する可能性があります

    docker wsl open //./pipe/docker_wsl: The system cannot find the file specified.

    または

    error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_wsl/v1.40/images/json?all=1: open //./pipe/docker_wsl: The system cannot find the file specified.
    

    以下のように、以前から余分なコンテキストがあるかどうかを確認できます。その "wsl" の方が古い (持っている場合) ため、Windows と WSL2 の両方でデフォルトを使用する必要があります。

    docker context ls
    NAME DESCRIPTION DOCKER ENDPOINT KUBERNETES ENDPOINT
    default * Current DOCKER_HOST based configuration npipe:////./pipe/docker_engine https://kubernetes.docker
    wsl Docker daemon hosted in WSL 2 npipe:////./pipe/docker_wsl

    docker context rm wsl との混同を避けるために実際に削除しました .

    これが私の Windows マシン上の Ubuntu です

    これが私の Windows マシンです。両方のインスタンスの Docker イメージが同じリストを返すことに注意してください。それらは同じ Docker バックエンドです!

    Windows では VS Code でコーディングしたいが、Linux ではコンパイルしたい

    この時点で、セットアップが完了したら、バナナに行くことができます。 VS Code を使用してすべての開発者ツールを実行し、コンテナー内でビルドするコンテナー ベースの開発を行うことができます...おそらく、Go、PHP、または .NET Core をイベントでインストールすることはありません。すべてコンテナの中にあります。

    ところで、私のYouTubeを購読してください!私は向こうでこのことについてよく話します.

    スポンサー: Couchbase は、開発者に JSON の柔軟性を備えた SQL の力を提供します。 Kubernetes、Java、.NET、JavaScript、Go、Python などのテクノロジーを使用して、今すぐ無料で使い始めましょう。


    Docker
    1. AlmaLinux /RockyLinuxにDockerをインストールする方法

    2. LinuxおよびDockerでGPU用にOpenCLをセットアップする方法[完全ガイド]

    3. Linux で Windows のタイトルを設定する方法

    1. Linuxシステムリカバリにsystemd-nspawnを使用する方法

    2. Linuxでシステムホスト名を設定または変更する方法

    3. Linux用のWindowsサブシステムの説明、WSLおよびWSL2

    1. DockerをFedoraLinuxシステムにインストールする方法

    2. DockerにWordPressをインストールする方法(Windows、macOS、Linux)

    3. Linux 用 Windows サブシステムで X マウス ポインターのサイズを設定する方法