参考:
Windows 10/11+WSL2で、PC上にDocker環境を用意しよう
大まかな流れ
- 「Linux用Windowsサブシステム(WSL)」を使用できるようにする
- 「仮想マシン プラットフォーム」を使用できるようにする
- 「WSL2用Linuxカーネル」をインストール
- 「WSL2用Linuxディストリビューション」をインストール
- 「Windows Terminal」をインストール
- 「Docker Desktop for Windows」をインストール
Window Terminalをファイルを指定して実行から呼び出す
wt
参考:
Windows Terminalを「ファイル名を指定して実行」から起動する方法
現在のWSLバージョンを確認する
wsl -l -v
以下のコマンドの略
wsl --list --verbose
他にも「--list」と組み合わせるコマンドがある。
- --all: すべてのディストリビューションを一覧表示します。
- --running: 現在実行中のディストリビューションのみを一覧表示します。
- --quiet: ディストリビューション名のみを表示します。
参考:
WSL の基本的なコマンド
WSLのバージョン確認・変更方法を現役エンジニアが解説
実際にDocker Desktopを動かし、チュートリアルを実行する
- 「Lerninng CenterからWhat is container?」を選択
- チュートリアルに従って、コンテナの起動、起動確認、停止を実施
チュートリアルで実施した内容をコマンドで表すと下記
起動(イメージと名前、起動ポートを指定して起動)
docker run --name welcome-to-docker -d -p 8088:80 docker/welcome-to-docker
停止
docker stop welcome-to-docker
コマンドの説明
参考:Docker run リファレンス
docker run [オプション] イメージ[:タグ|@ダイジェスト値] [コマンド] [引数...]
オプション
--name 名前
名前を指定できる。stopを実行する際などで指定可能
-d
デタッチドモードで起動。デタッチドモードについての説明は上記参考リンクを参照。
-p ホスト側ポート:コンテナ側ポート
ホスト側ポートにアクセスする。通信はコンテナ側ポートへ転送される。
複数ポートをバインドする場合はさらに -p をつなげる。
その他有用な基本コマンド
起動中のコンテナの確認
参考:Docker ps リファレンス
docker ps
停止中のコンテナも含めて確認
docker ps -a
コンテナの起動
参考:Docker start リファレンス
docker start [コンテナ]
ex: docker start 200f430e4e6c
コンテナの削除
参考:Docker rm リファレンス
docker rm [オプション] コンテナ [コンテナ...]
ex: docker rm 200f430e4e6c
イメージの削除
参考:Docker rmi リファレンス
docker rmi [オプション] イメージ [イメージ...]
ex: docker rmi welcome-to-docker
新たにイメージをビルドする方法
- Dockerfileとソースコードを準備する
- docker build を使用してイメージを作成する
- サンプルアプリケーションのダウンロード
git clone https://github.com/docker/welcome-to-docker
- docker buid コマンドを実行し、イメージを作成する
docker build -t welcome-to-docker .
WindowsにGitがインストールされていない場合のGit for Windowsのインストール
参考:【Windows】Gitの環境構築をしよう!
- 新しいリポジトリーの最初の名前の設定
Override the default branch name for new repositoriesを選択。(デフォルトのmasterではなく好きな名前を設定する) - PATHの環境設定
Git from the command line and also from 3rd-party softwareを選択(PowerShellやサードパーティソフトから利用できる設定変更のみとしUnixツールで既存のWindows環境を壊さないようにする) - 使用するSSHの設定
Use bundled OpenSSHを選択 - HTTPSが使用するSSLライブラリの設定
Use the OpenSSL libraryを選択 - 改行コードの変換についての設定
Checkout Windows-style, commit Unix-style line endingsを選択(チェックアウト時にCRLFに変換、コミット時はLFでコミット) - Git Bashを使用する際のターミナルの設定
Use MinTTY(the default terminal of MSYS2を選択 - git pull コマンドの振る舞いの設定
Default(fas-forwar or merge)を選択 - 認証情報ヘルパーについての設定
Git Credential Managerを選択