初心者が仮想マシンCentOSにDockerをインストールしてテストイメージを実行するまでの手順
こんにちは、小吉です。
システムエンジニアとして活動しておりますが、今までDockerに触れる機会がありませんでした。
今後の現場次第では、Dockerを使うこともあろうかと思い、プライベートな時間を使い、勉強のため、無償版のDocker CE(以後、Docker)をインストールして触ってみましたので、そのときの手順を備忘録がてら共有しようと思います。
ざっくり言うと、Windows 10のマシンにVMware Workstation Playerで仮想マシンを作成し、CentOSをインストールした上で、そのCentOS上にDockerをインストールして、テストイメージの実行までしてみました。
なお、DockerのインストールはDocker Documentationを参考に進めました。
環境
・Windows 10 Home 64ビット
使用ソフト
・VMware Workstation Player
・ターミナルソフト(Tera TermやPuTTY)
OSの用意
DockerはLinux, MacOS, Windowsと幅広いOSで利用可能ですが、今回は使い慣れた、かつ無償で試せるCentOSを使いたいと思います。
OSイメージの取得
Docker Documentationには、CentOS 7を使え、とあるので、こちらからCentOS 7のisoイメージをダウンロードします。
ちなみに私は、[DVD ISO]->ftp.riken.jpのサイトを選択してダウンロードしまし。
VMware Workstation Playerのインストール
商用でなければ無償で利用できるVMware Workstation Playerをダウンロードしてインストールしておきます。インストール手順は本記事のテーマから逸れるため、ここでは割愛します。
仮想マシンの作成
- VMware Workstation Playerを起動します。
- [ファイル]->[新しい仮想マシン]から、新しい仮想マシンのウィザードを開きます。
- ”インストーラディスクイメージファイル”に、ダウンロードしたCentOS 7のisoファイルを選択して、次へをクリックします。
- フルネーム、ユーザー名、パスワード、確認、をそれぞれ記入し次へをクリックします。
- 仮想マシン名を記入し次へをクリックします。
- ディスク最大サイズを設定し、その他はデフォルトのまま次へをクリックします。
- 完了をクリックします。すると、勝手に仮想マシンが起動し、CentOSのインストール完了までやってくれます。
SSHログイン
リソース的にVMware のGUIだともっさりする事もあるので、SSHログインしてコマンドで操作できるようにします。
- VMwareのGUIでCentOSにログオンして、[Applications]->[Favorites]->Terminalで、ターミナルを開きます。
- ifconfigを実行してIPアドレスを確認します。
- Windows上でターミナルソフト(Tera TermやPuTTY)を立ち上げ、確認したIPアドレスで接続します。
- インストール時に指定したユーザー名とパスワードでログインします。
Dockerのインストール
事前にログインユーザにsudo権限を付与しておいてください。その方法はWebに転がっているため割愛します。
リポジトリのセットアップ
必要パッケージをインストールします。
$ 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
インストール
$ sudo yum install docker-ce docker-ce-cli containerd.io
最新バージョンのDockerがインストールされます。
本記事執筆時点では、18.09がインストールされました。
Dockerを触る
起動
$ sudo systemctl start docker
テストイメージを実行
$ sudo docker run hello-world
以下出力があれば実行が成功しています。
Hello from Docker!
This message shows that your installation appears to be working correctly.
コンテナ一覧を表示
$ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ed96e90f28df hello-world "/hello" 6 minutes ago Exited (0) 6 minutes ago vigilant_wiles
-
前の記事
コマンドラインでdocker loginした際にpermmission deniedになった話 2019.04.15
-
次の記事
GitHubでpushしたときにSlackに通知されるようにした手順(2019年) 2019.04.18