わたるの備忘録

エンジニア志望の文系大学生の備忘録

Windows10にDocker環境を構築する。

今回はWindow10にDocker環境を構築していこうと思う。

Windows10 Proであれば、Docker for Windowsというデスクトップアプリを使用することが出来るが、それ以下のバージョンだと、基本的には下記の手順で環境構築するのがおすすめ。

手順は以下

  1. VirtualBox + Vagrant をインストール
  2. 1.の環境内にCentOS7をインストールする
  3. CentOS7にDockerをインストールする
【追記】2020/7/31現在は、ただのWindows10でもDocker for Windowsが利用できるとのこと。

1.VirtualBox + Vagrant をインストール

参照記事:https://qiita.com/yasshcy/items/8079c0cf4a96e461863b

2.CentOS7のインストール

インストールが出来たら、今回はCentOS7をインストールしていく。

まず、ディレクトリを用意する。(場所任意)

 mkdir MyVagrant

ディレクトリを作ったものへ移動

cd MyVagrant

ここで仮想マシンにCentOS7を追加する

 vagrant box add viniciusfs/centos7 https://atlas.hashicorp.com/viniciusfs/boxes/centos7/

viniciusfs/centos7 がOSの名前、その後に続くのがネット上にあるboxのインストール先。

参照:http://www.vagrantbox.es/

途中、2のvirtualboxを選択してEnter

Successfully added box 'viniciusfs/centos7' (v1.0.1) for 'virtualbox'! と出たら成功。

vagrant init viniciusfs/centos7

と打つ。

A `Vagrantfile` has been placed in this directory. You are now ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on `vagrantup.com` for more information on using Vagrant.

と表示されれば成功。

ここで、vagrantfileを書き換え。(46行目あたり)

config.vm.synced_folder "./dev", "/home/vagrant/dev"

とする。

ここの一つ目のパスはローカルのパス、二つ目のパスは仮想マシン内のパスであることに注意。

(上の例は、MyVagrantディレクトリ直下にあるdevディレクトリを仮想マシンと共有するときの書き換え例。)

これが終わったらvagrant を立ち上げる。

vagrant up

vagrantが起動しているかどうかをチェックする場合は

vagrant status

で確認できる。(running と出てれば起動できている) 

マシンを停止するときは

vagrant suspend

でおけ。

 vagrant が立ち上がったら

vagrant ssh

仮想マシン内に入る。

lsコマンドを打つとdevディレクトリがあることを確認。

[vagrant@localhost ~]$ ls
dev

3.DockerをCentOS7にインストール

参照:https://qiita.com/ymasaoka/items/b6c3ffea060bcd237478

ほぼこの記事だけでいけるw
まず、OSの更新

sudo yum update
sudo yum upgrade

旧バージョンのアンスト

sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

公式リポジトリのインストール

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Docker ce のインストール

sudo yum install -y docker-ce docker-ce-cli containerd.io

起動

sudo systemctl start docker

OS起動時のDocker自動起動設定

sudo systemctl enable docker

docker-compose も入れる。

参考記事:https://qiita.com/ymasaoka/items/4e6deca0ad2b4cae87b8

パス内にあるバージョンは任意で最新のものに置き換える。↓

sudo curl -L "https://github.com/docker/compose/releases/download/1.26.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

ダウンロードしたバイナリとDockerに、実行可能権限を付与

sudo chmod +x /usr/local/bin/docker-compose
sudo usermod -aG docker $USER

以上。
docker-compose コマンドを使うときは一旦マシンを抜けてから使うこと。(最後の実行権限付与が反映されない)