WSL2にdockerを導入
せっかく WSL2 に移行したので docker もインストールしてみました.
導入手順
インターネット検索すれば日本語の記事がたくさん出てきますが, WSL2 はかなり新しい技術で変化が非常に速いですから, 公式の情報に従うのが一番でしょう. 幸いにも日本語化されているのでとても楽です.
- Docker Desktop WSL 2 バックエンド — Docker-docs-ja 19.03 ドキュメント
- Windows Subsystem for Linux で Docker コンテナーの使用を開始する | Microsoft Docs
この通りにインストールしたら簡単にできました. Linux 側に docker をインストールする必要はなく,
Win10 側で Docker Desktop が動いていれば docker
コマンドが通ります (!).
勝手にスタートアップに登録されるのですが, 起動時にそこそこ負荷がかかるしメモリも圧迫します. 日常的に使うのならその方が便利なのでしょうけれども, 導入した PC ではそんなに頻繁には使わないと思われるのでオフにしました. 使うときに起動すればよいでしょう.
使い方
docker はすぐにコマンドを忘れるんですよね...
イメージ
docker images
またはdocker image ls
: ローカルにあるイメージの一覧docker pull debian:stable-slim
とか: Docker Hub からイメージをダウンロード
コンテナ
docker ps -a
: コンテナの稼働状況の一覧docker run -it [image]
:[image]
をもとにコンテナを作成し対話モードでアタッチ--name [name]
でコンテナ名を指定-v [HOST]:[CONTAINER]
でホスト側のパス[HOST]
をコンテナ側のパス[CONTAINER]
としてマウント- 注意: オプションはイメージ名の前で指定すること
docker start [id]
: コンテナ[id]
を起動- オプション
-ai
で対話モードで起動しアタッチする (--attach --interactive
の略)
- オプション
docker stop [id]
: コンテナ[id]
を停止docker attach [id]
: 起動しているコンテナ[id]
にアタッチC-p C-q
: コンテナからデタッチ- この記事に従って WSL2 側の設定ファイルをいじれば変更できる
その他
docker cp [file] [id]:[path]
: ローカルのファイル[file]
をコンテナ[id]
のパス[path]
にコピー- ホスト側とコンテナ側は逆でも可
- コンテナが停止していてもよい