docker 概念整理
dockerとは
dockerとはホストマシン(macのローカル)に依存せず、開発環境を構築出来るツール linuxカーネルの仮想技術を用いているため、オーバーヘッドが少ない。
コンテナ技術を用いて、実行環境を他のプロセスから隔離してアプリを起動させます。 カーネルを直接使用しているから楽になります。 Vagrantだとメモリ割当やらCPUコア数やら設定しなくてはいけないんですが、 dockerは必要ありません。 もちろん、virtualboxでのメモリ割当は必要です。
カーネルとは
ぐぐってみると、アプリケーションとハードウェアの連携を司るシステムだそうです。
コンテナ技術とは
1つのOS上に隔離された区画を用意してアプリケーションを実行する技術です。
よく docker pull centos
をしてcentosのイメージなどを構築するケースがありますが、これはdocker(linux環境)上にcentos環境を構築する形となります。
dockerホストマシン作成方法
通常はvirtualboxなどを用いて仮想マシンを作成します。 macやwindowsではdocker-machineを用いて、docker virtualbox上にdockerホストマシンを構築します。
コマンドは以下の通りの感じで作成出来ます。
$ docker-machine create --driver virtualbox vbox
これで仮想マシンを作成します。