環境説明環境: Win10 Enterprise Edition + Ubuntu 18.04 LTS [WSL] Windows 10 に Docker for Windows をインストールする現在、Docker には Win10 Professional システム用の特別なインストール パッケージがあり、Hyper-V を有効にする必要があります。 Hyper-Vを有効にする プログラムと機能 Windows の機能をオンまたはオフにする Hyper-Vを選択 Windows用DockerをインストールするWindows 用 Docker の最新バージョン ダウンロードアドレス: https://docs.docker.com/v17.09/docker-for-windows/install/ Get Docker for Windows [Stable] をクリックして、Windows バージョンをダウンロードします。 インストールが完了すると、Docker が自動的に起動します。通知バーに小さなクジラのアイコンが表示されます 以下に示すように、3 つのアイコンもテーブルに表示されます。 コマンドラインで 起動していない場合は、Windows で Docker を検索して起動できます。 起動すると、通知バーに小さなクジラのアイコンも表示されます。 サブシステムのインストール Dockerのインストール問題ない leenhem@DESKTOP-7SREO20:~$ sudo apt-get install docker.io パッケージリストを読み込んでいます...完了 依存関係ツリーの構築 状態情報を読み込んでいます...完了 docker.ioはすでに最新バージョン(18.09.7-0ubuntu1〜18.04.4)です。 アップグレードされたものは 0 個、新規インストールされたものは 0 個、削除されたものは 0 個、アップグレードされていないものは 111 個。 使用に問題がある[正常に使用できない] 公式サイトの説明 leenhem@DESKTOP-7SREO20:~$ docker ps unix:///var/run/docker.sock の Docker デーモンに接続できません。Docker デーモンは実行されていますか? leenhem@DESKTOP-7SREO20:~$ sudo /etc/init.d/docker ステータス * Dockerが実行されていません leenhem@DESKTOP-7SREO20:~$ sudo /etc/init.d/docker を開始します * Dockerを起動しています: docker [ OK ] リーンヘム@DESKTOP-7SREO20:~$ leenhem@DESKTOP-7SREO20:~$ sudo /etc/init.d/docker ステータス * Dockerが実行中 leenhem@DESKTOP-7SREO20:~$ sudo /etc/init.d/docker ステータス * Dockerが実行されていません Docker をまったく起動できないことがわかります。どうすればよいでしょうか?最初に必ずログを確認してください (/var/log/docker.log) leenhem@DESKTOP-7SREO20:~$ テール /var/log/docker.log -n 100 time="2019-10-22T11:58:25.436968100+08:00" level=info msg="ccResolverWrapper: 新しいアドレスを cc に送信しています: [{unix:///var/run/docker/containerd/containerd.sock 0 <nil>}]" module=grpc time="2019-10-22T11:58:25.437359900+08:00" level=info msg="ClientConn がバランサーを \"pick_first\" に切り替えています" module=grpc time="2019-10-22T11:58:25.437703900+08:00" レベル=情報 メッセージ="pickfirstBalancer: HandleSubConnStateChange: 0xc420769030、接続中" モジュール=grpc time="2019-10-22T11:58:25.438698400+08:00" レベル=情報 メッセージ="pickfirstBalancer: HandleSubConnStateChange: 0xc420769030, READY" モジュール=grpc time="2019-10-22T11:58:25.559058900+08:00" level=info msg="[graphdriver] 以前のストレージ ドライバーを使用しています: overlay2" time="2019-10-22T11:58:25.719182400+08:00" level=info msg="グラフのコンテンツ アドレス可能性への移行に 0.00 秒かかりました" time="2019-10-22T11:58:25.719593400+08:00" level=warning msg="カーネルは cgroup メモリ制限をサポートしていません" time="2019-10-22T11:58:25.719660300+08:00" level=warning msg="マウント内に CPU cgroup が見つかりません" time="2019-10-22T11:58:25.719697200+08:00" level=warning msg="マウント内に blkio cgroup が見つかりません" time="2019-10-22T11:58:25.719732900+08:00" level=warning msg="マウント内に cpuset cgroup が見つかりません" time="2019-10-22T11:58:25.719888000+08:00" level=warning msg="pid のマウントポイントが見つかりません" time="2019-10-22T11:58:25.721991900+08:00" level=info msg="正常なシャットダウン後のヘルスチェックを停止しています" module=libcontainerd time="2019-10-22T11:58:25.722045300+08:00" level=info msg="正常なシャットダウン後にイベント ストリームを停止しています" error="コンテキストがキャンセルされました" module=libcontainerd namespace=plugins.moby time="2019-10-22T11:58:25.723869300+08:00" レベル=情報 メッセージ="pickfirstBalancer: HandleSubConnStateChange: 0xc420769030, TRANSIENT_FAILURE" モジュール=grpc time="2019-10-22T11:58:25.724042800+08:00" レベル=情報 メッセージ="pickfirstBalancer: HandleSubConnStateChange: 0xc420769030、接続中" モジュール=grpc デーモンの起動エラー: デバイス cgroup がマウントされていません 予備的な結論: WIN10カーネルはLinuxのcgroupとaufsコンポーネントを完全にシミュレートすることはできません 公式サイトの説明 [解決方法] [クロスポスト] WSL と Docker の相互運用性 https://nickjanetakis.com/blog/setting-up-docker-for-windows-and-wsl-to-work-flawlessly apt インストール スクリーンフェッチ スクリーンフェッチ スクリプト: https://files.cnblogs.com/files/rgqancy/WSL.js、ダウンロードしてtxtとして保存 リレーの確立 Go がインストールされたので、リレーをビルドできます。以下のコマンドでは、必ず Windows ユーザー名に置き換えてください。 github.com/jstarks/npiperelay にアクセスします。 GOOS=windows go build -o /mnt/c/Users/Administrator/go/bin/npiperelay.exe github.com/jstarks/npiperelay 現在、Windows 用にリレーが構築されていますが、WSL 内から呼び出せるようにしたいと考えています。これを行うには、シンボリック リンクを作成します。必ず Windows ユーザー名に置き換えてください: sudo ln -s /mnt/c/Users/Administrator/go/bin/npiperelay.exe /usr/local/bin/npiperelay.exe リレーを可能にするために socat を使用します。 2 つのポイント間で双方向にデータを流すツールである socat をインストールします (これについては後で詳しく説明します)。このパッケージを入手してください: sudo apt をインストール socat 最終ステップ socat がインストールされ、実行ファイルがビルドされたら、いくつかのものをつなげるだけです。機能を有効にするためにシェル スクリプトを作成します。これをユーザーのホームディレクトリに配置します。これを行うには: #ファイルを作成する ~/docker-relay をタッチします #実行権限を追加 chmod +x ~/docker-relay 作成したファイルを、お気に入りのテキスト エディター (vim など) で開きます。これを docker-relay ファイルに貼り付けます: #!/bin/sh exec socat UNIX-LISTEN:/var/run/docker.sock、fork、group=docker、umask=007 EXEC:"npiperelay.exe -ep -s //./pipe/docker_engine"、nofork ファイルを保存して閉じます。 docker-relay スクリプトは、docker グループによるアクセスを許可するように Docker パイプラインを構成します。通常のユーザーとして実行するには (すべての docker コマンドに 'sudo' を追加する必要はありません)、WSL ユーザーを docker グループに追加します。 Ubuntuの場合: sudo adduser <WSLユーザー> docker テストしてみましょう! 新しい WSL シェルを開いて、グループ メンバーシップがリセットされていることを確認します。バックグラウンドでリレーを開始します。 sudo ~/docker-relay & 次に、docker コマンドを実行して状況をテストします。 Windows からコマンドを実行した場合と同じ出力が表示されます (コマンドの前に「sudo」を付ける必要がないことに注意してください)。 知らせ 事前にDocker for Windowsを起動するには 概略図WSL で実行されている Docker クライアントを Docker for Windows と通信させる場合、根本的な問題があります。WSL クライアントは Unix ソケット経由の IPC を理解しますが、Docker for Windows は名前付きパイプ経由の IPC を理解します。ここで socat と npiperelay.exe が役立ちます。これらは、IPC のこれら 2 つの分離した形式の間の仲介役です。 Socat は Unix ソケット経由で通信する方法を理解し、npiperelay は名前付きパイプ経由で通信する方法を理解します。 socat と npiperelay はどちらも stdio 経由で通信する方法を理解しているため、相互に通信できます。 要約する 上記は、編集者が紹介した、Win10 サブシステム Ubuntu (WSL) に Docker をインストールする方法に関するチュートリアルです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: MySQLの実行原理、論理階層化、データベース処理エンジンの変更について詳しく説明します
実際の業務や面接では、「配列の重複排除」の問題によく遭遇します。以下は、js を使用して実装された配...
目次1 現在のデータベースの内容を表示し、データベースをバックアップする2 bin_log関数を有効...
[概要] この記事では、自作の Docker プラットフォームをベースに完全な ELK システムを素...
序文MySQL の権限テーブルは、データベースの起動時にメモリにロードされます。ユーザーが ID 認...
Rownum は、Oracle での独自の書き込み方法です。Oracle では、rownum を使用...
目次序文1. Dockerをインストールする2. ElasticSearchをインストールする3. ...
docker-maven-plugin プラグインを使用する場合、Maven は対応する jar パ...
最近、あるサービスにアラームが発生し、耐えられなくなっています。アラーム情報は次のとおりです。メトリ...
目次1. Nginxロケーションの基本設定1.1 Nginx 設定ファイル1.2 Pythonスクリ...
現在、DockerイメージのほとんどはDebianベースです # cat /etc/issue De...
データベースバージョン: mysql> select version(); +--------...
システムをリセットした後、かなり前にインストールした MySQL データベースのコンソール クエリで...
目次# データ準備後# SQLクエリ率テスト# SQL グループレートテスト# sql ソート率テス...
序文現在、私は Beetlex のデータ分析プラットフォームに取り組んでいます。この製品の開発では、...
vue-element-admin インポートコンポーネントのカプセル化テンプレートとスタイルまず、...