【Docker入門】コンテナ型仮想化技術Dockerを使ってみた

【Docker入門】コンテナ型仮想化技術Dockerを使ってみた

  • このエントリーをはてなブックマークに追加

はじめまして!!
ブラジル人だけどサッカーが全くできないビトルです!

今回はdockerの仕組みや使い方をかるーく紹介したいと思いまーす!

関連 【初心者】DockerをWindowsにインストールする方法

目次

Dockerとは?

Dockerは、Docker社が開発しているオープンソースのコンテナ型仮想化ソフトウェアです。
Linux上でLXC(Linux Container)の技術を活用し、コンテナ型の仮想環境を作成します。

コンテナ? なにそれ? ってなりますよね・・・
コンテナというのは簡単に言うとWebサーバーなどのアプリケーションの実行環境を抽象化する技術です。

そういえばVMwareなどのハードウェア仮想化ツールもありますよね?
それとの違いは何だろう?

ハードウェア仮想型とコンテナ型の違い

こうしてみるとアプリ毎に仮想の物理マシンとその上で動作するゲストOSを立ち上げてるハードウェア仮想型のツールより、ローカルのマシンのOSを共有して各アプリをコンテナごとに立ち上げているDockerの方が利用しているリソースが少なさそうですね。

他にもDockerにはいくつかの特徴・利点があります。

特徴・利点

  • Go言語で書かれている
  • パフォーマンスが物理マシンとほぼ変わらない
  • Linuxカーネルを使っている環境であればどこでも動作する
  • 環境の変更・作り直しが容易にできる
  • 開発用の環境がすぐに用意でき、かつ本番環境と同じものを利用できる
  • Dockerfileを利用してインフラの設定をコードベースで管理できる

 

なかなか便利そうですねぇ・・では早速使ってみましょうか!!

Dockerインストール方法

必要なもの

  • Xcode
  • Homebrew
  • VirtualBox

環境

  • Mac OS X 10.9以上

構成

これから作る構成は図のようになります:

Dockerインストール構成図

簡単に構成を説明しますと:

  VirtualBox(仮想化ソフトウェア)

  Boot2docker(Dockerサーバーがプリインストールされた仮想マシン)

を実行します。
手元のマシンのDockerクライアントから仮想マシンのDockerサーバーを操作し、Dockerコンテナを実行する形となります。

手順

Homebrew・Xcodeをインストール

DockerをインストールするためにHomewbrewとXcodeをインストールします。
インストール方法については個人的にこのページがオススメです。

パッケージ管理システム Homebrew

VirtualBoxをインストール

MacでVM(boot2docker)を動かす場合はこれが必要になります。
https://www.virtualbox.org/wiki/Downloads
ここからVirtualBoxダウンロードしてインストールしましょう。

Dockerをインストール

まずはターミナルでちょろちょろっと下のコマンドを入れます。

$ brew update #パッケージのアップデート
$ brew tap homebrew/binary
$ brew install docker boot2docker #dockerコマンドと起動用のVMイメージを入れます

次に以下のコマンドでdockerがインストールされたか確認してみましょう。

$ docker -v

こんな感じにバージョンが表示されたらオケーです!

Docker version 1.5.0, build a8a31ef

次はisoイメージをダウンロードします。

$ boot2docker init

ダウンロードが終わったらコンテナを起動させます

$ boot2docker up

すると・・・VirtualBoxでboot2dockerというVMが立ち上がりました。
VirtualBoxでboot2docker

 docker upした後、dockerから以下のようにクライアントからの接続ができるための環境変数を設定するように促されます。なので出てきたコマンドをそのまま入力しちゃいましょう。

$ export DOCKER_TLS_VERIFY=1 
$ export DOCKER_HOST=tcp://192.168.59.xxx:2376 
$ export DOCKER_CERT_PATH=/Users/vitor/.boot2docker/certs/boot2docker-vm

dockerが使える準備が整いましたね!では試しにイメージをpullしてみましょう。

$ docker pull centos:centos6

無事落とせたかどうかdocker imagesで確認してみましょう。

$ docker images
REPOSITORY      TAG      IMAGE         ID    CREATED     VIRTUAL SIZE
centos          centos6   88f9454e60dd  3     weeks ago   210 MB

イメージがつくられてますね。 次にコンテナを起動してみます。

$ docker run -t -i -p 80:80 centos /bin/bash
[root@08e12125c873 /]#

動きましたーーー!!
今度はコンテナのイメージ内にwebサーバをインストールしてみましょか。

[root@08e12125c873 /]# yum update
[root@08e12125c873 /]# yum install httpd
[root@08e12125c873 /]# service httpd start

webサーバを立ち上げたのでboot2docker ipでVMのIPアドレスを確認してブラウザでアクセスしましょう。

$ boot2docker ip
192.168.59.103

Dcokerで立ち上げたサーバー

アクセスできました!
以上、dockerの使い方をざっくりと説明してみました。

 

Docker関連ツール

Kitematic

https://kitematic.com/

Kitematic

Docker試すのに色々コマンド打たなきゃ行けなくて面倒だなぁ・・・気軽に色んな開発環境を試したいなぁ・・・という人にはオススメのフロントエンドツールです。
Kitematicは自動的にVirtualboxとLinuxを手元のマシンにインストールし、GUIから使いたいコンテナのイメージを選んでアプリを起動します。現在はMac OSXのみ利用可能です。

GearD

http://openshift.github.io/geard/

GearD

Red Hat社が開発したDockerコンテナ管理に特化したCLIツールです。systemdとの連携や複数のコンテナの一括デプロイができます。

参考URL

  • このエントリーをはてなブックマークに追加

記事作成者の紹介

ビトル()

サンパウロ州サンパウロ市出身の見習いエンジニアです! サッカーはできません!!!

関連するSONICMOOVのサービス

システムエンジニア募集中!

×

SNSでも情報配信中!ぜひご登録ください。

×

SNSでも
情報配信中!
SONICMOOV Facebookページ SONICMOOV Twitter
システムエンジニア募集中!

新着の記事

mautic is open source marketing automation