1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Docker初心者がWSL2を用いてローカルPCのDockerでWebアプリを動作させる手順

Last updated at Posted at 2025-04-09

はじめに

Docker 初心者向けに、Windows 環境にて WSL2 を用いてローカルPCの Docker で Web アプリを動作させる手順を紹介します。

WSL2を有効にする

Windows で Docker を利用するために初心者向けで分かりやすいのは Docker for Windows ですが、そちら個人利用は無償ですが、企業としての利用は有償化されるようなので、今回は WSL2 を使います。
WSL2 とは Windows Subsystem for Linux 2 の略称で、Windows上で Linux を仮想的に動かすことができるシステム環境のことです。

管理者として PowerShell を起動して、以下のコマンドを実行するとWSL2 が有効になります。

wsl --install

上記コマンドが完了するまで数分かかります。完了後にPC再起動が必要です。

コマンド完了して再起動後、下図のようにスタートメニューに「Ubuntu」というものが追加されています。
image.png

なぜ「Ubuntu」というメニューが追加されているかというと、WSL2 では Ubuntu という Linux ディストリビューション が採用されているので、WSL2を有効にすると Ubuntu が利用できるからです。
「Linuxディストリビューション」というのは何かというと、Linuxカーネルとその他ソフトウェア群を1つにまとめ、利用者が容易にインストール・利用できるようにしたもののことです。

スタートメニューの「Ubuntu」を実行すると、ターミナルが立ち上がります。
そこで Ubuntu で使用する UNIX ユーザー名とパスワードの設定を求められるため、任意の文字列を設定します。
Ubuntu ターミナルにて cat /etc/os-release を実行すると、下図のようにUbuntuのバージョンが確認できます(PC名は黒塗りしています)。
image.png

Docker Engine と Docker Compose のインストール

以下のページに書いてあるコマンドを貼り付けて、UbuntuにDocker Engine と Docker Compose をインストールします。
https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository

上記ページに書いてある赤枠部分のコマンドは、基本的にまとめて貼り付けても動作するようですが、私はそれぞれでエラーが出ないのか確認したかったので、1行ずつコマンドを貼り付けて実行しました。
image.png

インストール後、sudo docker version というコマンドを実行することで Docker Engine のバージョンを確認できます。
image.png

Webアプリを Docker で動作させる

今回はWebアプリの例として、TimeTracker NX というプロジェクト管理ツールを利用します。
TimeTracker NX を Dockerで動作させるための手順は、以下のページの「クイックスタート」に書いてあります。
https://hub.docker.com/r/densocreate/timetracker

上記のクイックスタートには、SQL Server を利用する場合と PostgreSQL を利用する場合の2パターンがあります。
今回は SQL Server を利用する方法でやります。
また、図のように「任意のディレクトリに以下の内容で compose.yml ファイルを作成します」と書いてありますが、それが具体的に何をするのかを説明します。
image.png

これは、Ubuntu ターミナルで UNIX コマンドを用いて任意のディレクトリを作成し、そのディレクトリの中に compose.yml ファイルを作成すれば良いのですが、Windows に慣れている人は Windows の操作でそれをやりたいと思います。

そこで Windows の操作でやる方法を紹介します。
まず、前提として、Ubuntu ターミナルを立ち上げた直後のカレントディレクトリは、自分の Windows の PC の \\wsl.localhost\Ubuntu\home\ユーザー名 というパスになります。
PC名を黒塗りしていますが、下図のカレントディレクトリが、上記パスになります。
image.png

エクスプローラーのナビゲーションウィンドウに、Linux という項目が追加されているので、下図のようにそこから辿ると見つけやすいです。
image.png

エクスプローラーを用いて、上記フォルダに任意のフォルダを作ります。
今回は「TTNX」というフォルダを作りました。
そのフォルダの中に、compose.yml を作ります。
compose.yml ファイルの中身は、Windowsのメモ帳などで編集します。
image.png

クイックスタートで、your password と書かれている3箇所は、任意の文字列に変更してください。これは SQL Server の sa という管理者向けアカウントのパスワードとして利用します。
image.png

ここまでを Windows の操作で行った後で、最後に Ubuntu ターミナルで下図のように
cd TTNX コマンドで compose.yml があるフォルダに移動してから
sudo docker compose up -d コマンドを実行すれば、Dockerコンテナが起動します。
image.png

成功すると下図のような画面表示になります。
image.png

この状態で http://localhost:8080/ にアクセスすると、下図のように TimeTracker NX というWebアプリの画面が表示されます。
image.png

まとめ

本稿の手順通りに実行すれば、Docker の初心者でも Web アプリをローカルPCの Docker で動作させられると思います。

ちなみに私はITエンジニア向け情報誌「Software Design」の2022年5月号から「ハピネスチームビルディング」を題材に連載記事を書いています。Web上でも以下で公開しています。

X(旧Twitter)でも役立つ情報を発信しますのでフォローしてもらえると嬉しいです → @kojimadev

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?