CentOS7にDockerをインストール

docker_install_to_centosDockerを理解しつつインストールして試したときの覚書。

環境: CentOS 7.1, docker 1.7.1-108

 

目次

  1. やりたいこと
  2. Dockerとは
  3. CentOS7上にDockerをインストール
  4. コンテナを起動

 


1.やりたいこと

  • Dockerで開発環境を構築
  • Google Container Engine(GKE)にDockerをアップロード
  • 本番環境のバージョンアップはDockerを切り替えるだけで、サーバーメンテナンス不要に
  • GitLab, Jenkins(Drone), Redmineとうまいこと連携して幸せに

 


2.Dockerとは

まずはDockerを理解するところから。私が読んだ本はこちら。

 


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

Dockerエンジン(DockerサーバーとDockerクライアント)をインストール
# yum install docker

確認
# docker version

Client version: 1.7.1
Client API version: 1.19
Package Version (client): docker-1.7.1-108.el7.centos.x86_64
Go version (client): go1.4.2
Git commit (client): 3043001/1.7.1
OS/Arch (client): linux/amd64
Server version: 1.7.1
Server API version: 1.19
Package Version (server): docker-1.7.1-108.el7.centos.x86_64
Go version (server): go1.4.2
Git commit (server): 3043001/1.7.1
OS/Arch (server): linux/amd64

サービスの起動と有効化
# systemctl start docker
# systemctl enable docker

確認
# systemctl -t service

「docker-storage-setup.service」がfailedになっているので実行してみる。
# docker-storage-setup

Rounding up size to full physical extent 84.00 MiB
Volume group "centos" has insufficient free space (16 extents): 21 required.

Volume Groupを確認
# vgs

VG     #PV #LV #SN Attr   VSize  VFree
centos   1   3   0 wz--n- 79.51g 64.00m

よく分からないので後回し

 


4.コンテナを起動

Docker HubにあるCentOSのDockerイメージをダウンロード。
# docker pull centos

ダウンロードしたイメージの一覧
# docker images

その他のイメージを検索
# docker search centos

検索するときはDocker Hubの方がわかりやすい。

 

こちらのチュートリアルに従って「Hello world」を表示してみる

# docker run centos:latest /bin/echo 'Hello world'

Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
Hello world

コンテナ上のコンソールでコマンドを実行してみる(インタラクティブ コンテナ)
# docker run -t -i centos:latest /bin/bash
[root@b12bbdf7b12a /]# more /etc/redhat-release

CentOS Linux release 7.1.1503 (Core)

[root@b12bbdf7b12a /]# exit

コンテナの一覧(停止中も含む)
# docker ps -a

停止中のコンテナを全部削除
# docker rm `docker ps -a -q`

 

次回は開発環境用のコンテナを作成する。

 

< Related Posts >