Quantcast
Channel: しのぶら!!! » sawanoboly
Viewing all articles
Browse latest Browse all 15

JoyentのUbuntuVMでDockerを動かす

$
0
0

lxcとaufsで仮想マシンを色々と便利に使えるDockerを JoyentのUbuntuVMで使う方法。

基本的にEC2の案内と同じですけど、一部コツがあります。

OSの下ごしらえ

Ubuntu12.04のVMを使います。

‘/tmp’のアクセス権

VMのリリースバージョンにもよりますが、’/tmp’にstickey bitが立ってない(0755)ものがあります。
何をするにも普通に困るので変更しておきます。

chmod 01777 /tmp

マウント調整

JoyentのVMはルートデバイスが小さめで、’/data’にマウントする形でボリュームが追加されています。
容量をあまり気にしないで使うために、bind mountを使ってマウントポイントを調整します。

既存ディレクトリ移動とマウント

/var, /opt, /homeあたりを移動してしまえばよいでしょう。

mv /var /data/ ;mkdir /var; mount --bind /data/var /var
mv /home /data/ ;mkdir /home; mount --bind /data/home /home
mv /opt /data/ ;mkdir /opt; mount --bind /data/opt /opt 

fstabに追記

 cat << EOL >> /etc/fstab
/data/var /var none bind 0 0
/data/opt /opt none bind 0 0
/data/home /home none bind 0 0
EOL

一回再起動しておきましょう。

AUFS対応カーネルの導入

あとは公式のInstation:Ubuntu Linuxの12.04に従っていきます。

カーネル変更

デフォルトのカーネルはLinux 3.8.6-joyent-ubuntu-12-optと新しいのですが、aufsモジュールがありませんので変更します。

apt-get update && sudo apt-get install linux-image-generic-lts-raring

カーネルパッケージのインストールが終わったら、

/etc/default/grubGRUB_DEFAULT=2にして update-grubをかけます。

ちなみに0がLinux 3.8.6-joyentで、1はLinux 3.8.6-joyent(Recovery Mode)なので気をつけましょう。
update-grub後に再起動するまえには必ず/boot/grub/grub.cfgを確認しておくことをお奨めします。

Dockerのインストール

3.8.0-xx-genericのカーネルで起動したら、aufsモジュールをロードします。

modprobe aufs

あとはdotcloudのpptリポジトリを登録し、lxc-dockerパッケージをインストールするだけです。

apt-get install python-software-properties && sudo add-apt-repository ppa:dotcloud/lxc-docker
apt-get update
apt-get install lxc-docker

Docker Run!

GettingStartedの締めとして、Ubuntuコンテナを起動してみましょう。

docker run -i -t ubuntu /bin/bash

コンテナが起動して、ログイン状態になります。

他のシェルを立ち上げてからdocker psで確認します。

# docker ps
ID IMAGE COMMAND CREATED STATUS PORTS
0b51168a6cf3 ubuntu:12.04 /bin/bash 31 minutes ago Up 31 minutes

OKですね。


Viewing all articles
Browse latest Browse all 15

Latest Images

Trending Articles





Latest Images