Dockerさわってみた Powered by Rabbit 2.1.2
Dockerさわってみた
とみたまさひろNSEG #50
2014-04-19
Dockerさわってみた Powered by Rabbit 2.1.2
自己紹介
とみた まさひろ
プログラマー (Ruby & C)
http://tmtms.hatenablog.com
http://twitter.com/tmtms
https://github.com/tmtm
Dockerさわってみた Powered by Rabbit 2.1.2
最近Dockerしりました
Dockerさわってみた Powered by Rabbit 2.1.2
さわってみました
Dockerさわってみた Powered by Rabbit 2.1.2
これはDockerの素人が発表して詳しい人からのツッコミで教えてもら
おうという企画です
Dockerさわってみた Powered by Rabbit 2.1.2
DockerDockerいきたい
Dockerさわってみた Powered by Rabbit 2.1.2
http://www.docker.io
Dockerさわってみた Powered by Rabbit 2.1.2
仮想環境を作れる
Dockerさわってみた Powered by Rabbit 2.1.2
仮想マシンではなくコンテナ
Dockerさわってみた Powered by Rabbit 2.1.2
コンテナ
Dockerさわってみた Powered by Rabbit 2.1.2
ハードウェア層のエミュレートはしない
Dockerさわってみた Powered by Rabbit 2.1.2
カーネルはホストOSとコンテナで共通
Dockerさわってみた Powered by Rabbit 2.1.2
コンテナ内のプロセスも普通のプロセス
Dockerさわってみた Powered by Rabbit 2.1.2
ホストから ps で見える
Dockerさわってみた Powered by Rabbit 2.1.2
コンテナ内からホストOSや他のコンテナのプロセスは見えない
Dockerさわってみた Powered by Rabbit 2.1.2
ディスクやネットワークも同様
Dockerさわってみた Powered by Rabbit 2.1.2
昔の User Mode Linux みたいなもの?
Dockerさわってみた Powered by Rabbit 2.1.2
FreeBSD の jail とかと似てる?
Dockerさわってみた Powered by Rabbit 2.1.2
Dockerおジャ魔女どれみDockerん
Dockerさわってみた Powered by Rabbit 2.1.2
64bit Linux のみ
Dockerさわってみた Powered by Rabbit 2.1.2
Imutable Infrastructure
Dockerさわってみた Powered by Rabbit 2.1.2
Dockerイメージからコマンド実行コマンドが終了したらコンテナも終
了
Dockerさわってみた Powered by Rabbit 2.1.2
毎回同じ状態から起動できる
Dockerさわってみた Powered by Rabbit 2.1.2
終了したコンテナは残っているけどもう起動できない
(追記:再起動もできました)
Dockerさわってみた Powered by Rabbit 2.1.2
終了したコンテナからイメージを作成することはできる
Dockerさわってみた Powered by Rabbit 2.1.2
コンテナやイメージを増やしても増えるのは差分だけ
Dockerさわってみた Powered by Rabbit 2.1.2
インストール
http://docs.docker.io/installation/ubuntulinux/
http://docs.docker.io/installation/rhel/
http://docs.docker.io/installation/mac/
Dockerさわってみた Powered by Rabbit 2.1.2
実行
# docker run イメージ名 コマンド
初回はイメージが自動的にダウンロードされる
コマンドが終了したらコンテナ終了
Dockerさわってみた Powered by Rabbit 2.1.2
実行
# docker run -i -t centos bashbash-4.1# ps -efUID PID PPID C STIME TTY TIME CMDroot 1 0 0 03:22 ? 00:00:00 bashroot 7 1 0 03:22 ? 00:00:00 ps -efbash-4.1# exit
-i 標準入力有効
-t 仮想端末あり
Dockerさわってみた Powered by Rabbit 2.1.2
イメージ一覧
# docker images
Dockerさわってみた Powered by Rabbit 2.1.2
コンテナ一覧
# docker ps
# docker ps -a # 終了済みも含む
Dockerさわってみた Powered by Rabbit 2.1.2
終了済みコンテナ削除
# docker rm <CONTAINER>
Dockerさわってみた Powered by Rabbit 2.1.2
ファイル共有
# docker run -v <HOST_PATH>:<CONTAINER_PATH>
Dockerさわってみた Powered by Rabbit 2.1.2
ポート公開
# docker run -p <HOST_PORT>:<CONTAINER_PORT>
Dockerさわってみた Powered by Rabbit 2.1.2
イメージ作成
# docker commit <CONTAINER> <IMAGE_NAME>
Dockerさわってみた Powered by Rabbit 2.1.2
イメージ作成
# lsDockerfile# docker build .
Dockerさわってみた Powered by Rabbit 2.1.2
デモ魔法少女まDockerマギカ