15
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

WSL2上のUbuntuでdocker/docker-composeを利用する

Posted at

はじめに

Windows環境でDockerを動かすためにDocker for Windowsの概要と導入を実施しましたが、PowerShell自体にどうも慣れません...。WSL2のUbuntu上で操作できたほうが色々楽です。今回はWSL2のUbuntu上でdockerをインストールして動かしてみます。

ちなみにDocker Desktop WSL 2 backend | Docker DocumentationのようにWindowsのDocker DesktopのバックエンドをWSL2にするものではなく、あくまでWSL2のUbuntuにdockerを入れるだけです。

環境

  • OS: Windows10 Pro 64bit
    • Version: 1909
    • OS build: 18363.1256
  • WLS2
    • Ubuntu 20.04

dockerインストール

Ubuntuにdockerインストールするのと同じなので、下記の公式ドキュメントを利用します。
参照:Install Docker Engine on Ubuntu | Docker Documentation

WSL2コマンドライン
# 古いバージョンのパッケージの削除
$ sudo apt-get remove docker docker-engine docker.io containerd runc

# aptパッケージの更新と、aptリポジトリを登録するために必要なパッケージのインストール
$ sudo apt-get update
$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

# Docker公式のGPGキーの追加
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# 先程登録したGPGキーが正当なものであるかをfingerprintからチェック
$ sudo apt-key fingerprint 0EBFCD88
pub   rsa4096 2017-02-22 [SCEA]
      9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid           [ unknown] Docker Release (CE deb) <docker@docker.com>
sub   rsa4096 2017-02-22 [S]

# リポジトリの追加
$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

# aptパッケージの更新と、dockerのインストール
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io

# インストールできているか確認
$ docker --version
Docker version 20.10.1, build 831ebea

# サービスの状態を確認
$ service docker status
 * Docker is not running

# not runnningの場合はスタートさせる
$ sudo service docker start

$ service docker status
 * Docker is running

# テスト
$ sudo docker run hello-world

インストール後、sudoなしでdockerコマンドを実行できるように設定します。
参考:Post-installation steps for Linux | Docker Documentation

WSL2コマンドライン
$ sudo groupadd docker

$ sudo usermod -aG docker $USER

$ newgrp docker

# sudo なしでdockerコマンドを起動できるかチェック
$ docker run hello-world

docker-composeのインストール

更にdocker-composeもインストールします。
参照:Install Docker Compose | Docker Documentation

WSL2コマンドライン
# curlを利用して安定版をダウンロード
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# 実行権限を付与
$ sudo chmod +x /usr/local/bin/docker-compose

# シンボリックリンクの作成
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

# テスト
$ docker-compose --version
docker-compose version 1.27.4, build 40524192

最後に

VM上でDockerってパフォーマンス的にどうなのかな...とは思いつつ慣れたLinuxのコマンドラインでDocker環境を構築できるのはやっぱり良いですね。
一通りインストールできたので次はRailsでも動かしてみます。

15
11
0

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
15
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?