【環境構築】VirtualBox + Vagrant + CoreOS + Docker環境の構築めも

More than 1 year has passed since last update.

環境構成

Mac上でvagrantを利用してCoreOSをVirtualBox上で稼働させてます。
CoreOSのdockerからコンテナ型仮想マシン(ubuntu)を動かしてみたメモです。
次回時間があればWindows版も投稿します。
MacとWindowsは構築過程が少し異なりますが、Macの方がもっと手軽く構築できます。

ざっくり言うとイメージはこんな感じです。

 ubuntu(コンテナ)
 -------------------
   docker
 -------------------
   CoreOS
 -------------------
   VirtualBox
 -------------------
  Mac(Windows)

環境バージョン

・Mac 10.8.5
・VirtualBox >= 4.3.10
・Vagrant >= 1.6
※ProviderをVirtualBox以外にvmware_fusionもできます。

用語について

VirtualBoxとは

http://ja.wikipedia.org/wiki/VirtualBox
・既存OSに他のOSを稼働させることが出来るプログラム

Vagrantとは

http://www.atmarkit.co.jp/ait/articles/1307/22/news076.html
・Vagrantとは、違う環境に移行可能な開発環境を簡単に構築・管理し、配布することができる開発環境作成ツール。
・つまりネットワークやメモリやcpuなどを簡単に設定できるツール

CoreOSとは

・サーバー向け軽量OS
・Docker Engineに特化した専用OS
・もっとも軽いLinux
・Ubuntu 14.04カーネルと同じなので安全!

dockerとは

http://ja.wikipedia.org/wiki/Docker
・ソフトウェアコンテナ内のアプリケーションのデプロイメントを自動化するオープンソースソフトウェアである。
・特殊なファイルシステムを利用してコンテナ型の仮想化を行う。

早速構築してみましょう

Mac

・homebrew-caskとは
homebrew-caskはMacのGUIアプリケーションをhomebrewで管理できるようになる拡張機能です。
brewは既にインストール済みを前提にしてます。

brew-caskインストール

$ brew install caskroom/cask/brew-cask

virtualboxとvagrantインストール

$ brew cask install virtualbox
$ brew cask install vagrant

gitからVagrantfileダウンロード

$ git clone https://github.com/coreos/coreos-vagrant/
$ cd coreos-vagrant

Vagrantfile通りにCoreOS仮想化します。

仮想マシンを起動する

$ vagrant up

仮想マシンにSSHで接続する

$ vagrant ssh

仮想マシン確認

CoreOS (alpha)
core@core-01 ~ $ uname -a
Linux core-01 3.17.2+ #2 SMP Tue Nov 4 04:15:48 UTC 2014 x86_64 Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz GenuineIntel GNU/Linux

最新ubuntuインストール

$ docker pull ubuntu:latest

ubuntu:latestイメージ確認

$ docker images

コンテナを起動し、ubuntuに入る

$ docker run -t -i ubuntu /bin/bash

コンテナマシン確認

root@bbc734cb8d06:/# uname -a
Linux bbc734cb8d06 3.17.2+ #2 SMP Tue Nov 4 04:15:48 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

容量がすくないのでご注意

root@bbc734cb8d06:/# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda9        17G  268M   16G   2% /
tmpfs           500M     0  500M   0% /dev
shm              64M     0   64M   0% /dev/shm
/dev/sda9        17G  268M   16G   2% /etc/hosts
tmpfs           500M     0  500M   0% /proc/kcore

容量が少なくてコンテナからコミットしてイメージ化できなかった。( ̄Д ̄;;
容量増やし方も後日に投稿しますね。