Docker 経由で wsl の tar ファイルを作成する方法

Docker 経由で wsl の tar ファイルを作成する方法

最近VScodeのリモート開発機能をいじっています。Dockerのコンテナに接続できるほか、WSLにも接続できます。window下のコンテナはWSL上で動いているので、中古屋のDockerに価格差で儲けさせるのではなく、WSLに直接接続する方法を勉強します。

wsl -l -oコマンドを使用すると、リモートでインストールできるイメージのリストを表示できます。

ここに画像の説明を挿入

Microsoft Store経由でイメージをダウンロードすることは絶対にできず、コマンドラインも機能しません。ここはネットワークに問題があるのか​​もしれません(ダウンロードできるときもありますが、(╯‵□′)╯︵┻━┻)。公式サイトによると、dockerを使用して自分でtarファイルを作成し、wslにインポートできるとのことで、WSLのドキュメントもあり、CentOSもインストールして試してみたいと思います。

オペレーティングシステムを実行するためだけにオペレーティングシステムを実行する人はいない

# Centos イメージをプルする docker pull centos
# コンテナを作成し、
docker run -it centos 
# すべてのコンテナを一覧表示し、centOS のコンテナ ID を見つけます
dockerコンテナls -a
# ディストリビューションをエクスポートします docker export c9e89339e9d2 > e:\centos.tar
# ディストリビューションを wsl にインポートします。コマンド形式は wsl --import <Distro> <InstallLocation> <FileName> です。 
# 対応するフォルダーを作成することを忘れないでください wsl --import CentOS E:\wslDistroStorage\CentOS e:\centos.tar
# インストールされたwslを表示する 
wsl -l -v
# 起動してシステムに入る wsl -d CentOS
# 終わり、
# 拡張機能の下で、デフォルトのディストリビューションを指定します。wsl --setdefault(-s) <DistributionName>  
wsl -s CentOS
# デフォルトのディストリビューションを指定した後、それを直接入力すると、wsl はデフォルトで CentOS ディストリビューションを入力します。

OK 完了しました。

wslの場所を移動する

C:\Users\Administrator> wsl --l -v
  名前 状態 バージョン
* docker-desktop 実行中 2
  docker-desktop-data 実行中 2
# エクスポート、wsl を指定されたファイルにエクスポートします C:\Users\Administrator> wsl --export docker-desktop-data "D:\Docker\wsl\data\docker-desktop-data.tar"
  # 元の仮想マシンを削除します。削除後、すべての情報が消去されます。C:\Users\Administrator> wsl --unregister docker-desktop-data
  # 新しい仮想マシンを生成します。つまり、指定された場所に仮想マシンをインポートします。--version 2 は wsl を指定します。
  # バージョン。すでに wsl2 をデフォルトとして設定している場合は、再度指定する必要はありません。
  # 特別な要件がない場合は、新しいものを使用してください。
C:\Users\Administrator> wsl --import docker-desktop-data "D:\Docker\wsl\data" "D:\Docker\wsl\data\docker-desktop-data.tar" --version 2

ドッカー

Dockerコンテナの名前を変更する

docker rename <コンテナID/名前> newName

Docker で wsl tar ファイルを作成する方法についてはこれで終わりです。Docker wsl tar ファイルの詳細については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • IDEA で Docker を WSL2 にデプロイする詳細なプロセス
  • Docker Desktop をインストールすると、エラー メッセージが表示されます: WSL 2 のインストールが完了していません (エラー メッセージを解決してください)
  • Windows 10にWSL2 Ubuntu20.04をインストールしてdocker環境を構築する方法
  • Windows 10 サブシステム Ubuntu (WSL) に Docker をインストールするチュートリアル (画像とテキスト付き)
  • Docker での WSL の構成と変更の問題について

<<:  MySQL 外部キー (FOREIGN KEY) の使用例の詳細な説明

>>:  Vue プロジェクトで TS (TypeScript) を使用するための入門チュートリアル

推薦する

UDP DUP タイムアウト UPD ポート状態検出コード例

以前、単純な UDP サーバーとクライアントの例を書きましたが、その中で、自分自身をクライアントと見...

Linux lnコマンドの使用

1. コマンドの紹介ln コマンドは、ファイルのリンクを作成するために使用されます。リンクは、ハード...

HTML タイトルに二重引用符を追加する方法

<a href="https://www.jb51.net/" title...

nginx で正規表現を使用してワイルドカードドメイン名を自動的に一致させる方法

Nginxは正規表現を使用して、ワイルドカードドメイン名をディレクトリに自動的に一致させます。 Ng...

Vue がルート変更を監視するときに watch メソッドが複数回実行される理由と解決策

目次要件の説明:要件分析:ニーズの解決問題解決私はフロントエンドの新人ですが、バックエンドのバグの中...

CSS3でシャトル星空のアニメーションを実現

結果: html <canvas id="スターフィールド"><...

Vueコンポーネントの動的コンポーネントの詳細な説明

目次要約する要約する配列が変更されると、対応するデータを動的にロードしますシナリオ: 異なるコンポー...

Mac に MySQL データベースをインストールし、環境変数を設定するためのグラフィック チュートリアル

目次MySQLをインストールする環境変数の設定MySQLをインストールするmysqlをダウンロードし...

Vue ページをリフレッシュするために provide と injection を適用する

目次方法1: 関数を直接呼び出す方法2: provide / inject (静的更新) を使用する...

jsは配列の平坦化を実装します

目次配列をフラット化する方法1.flat() の使用2. 正規表現を使用する3.reduce()+c...

Vue で echarts を使用してコンポーネントを視覚化する方法

echarts コンポーネントの公式ウェブサイト アドレス: https://echarts.apa...

@Font-face の基本的な使い方と、すべてのブラウザと互換性を持たせる方法

@Font-face 基本紹介: @font-face は、Web ページにカスタム フォントを表示...

macOS SierraにApache2.4+PHP7.0+MySQL5.7.16をインストールする

Mac システムには PHP と Apache が付属していますが、必要なバージョンではない場合があ...

ウェブサイトのデザインでは色の階層感覚に注意を払う必要があります

最近、私はデザインには階層感覚が必要だと言っています。この階層感覚には、色の重ね合わせや要素の重ね合...