以前のリビジョンの文書です


Scientific Linux 6.5でDocker

そもそもDockerってなんや?

Linux上で独立した別のLinuxシステムを起動する事ができるコンテナ型の仮想化ソフトの一つ

ベースとなっているのはLXC(Linux Containers)でKVMやVMWareなどとは違い、ホストOS環境上に隔離エリアを作成して仮想的に新しいOS実行環境を作り出します。

インストール

Scientific Linux 6.5であればepelのリポジトリを追加する事でyumでインストールが可能

yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum -y install docker-io
service docker start
chkconfig docker start

はい、終了!(ぉ

新しい仮想環境を作る

Scientific Linuxの公式なイメージが無いっぽいのでCentOSで構築してみる

docker run centos /bin/echo "Hello World"

最初だけCentOSのイメージがダウンロードされるので時間がかかるが、しばらく待つと画面上に

Hello World

と表示される。

これは仮想環境でechoコマンドが実行され、その結果が出力されている。

この時、起動してきた仮想環境はどうなったかと言うと、echoだけを起動して終了している。

実行している仮想環境を確認するには

docker ps

と実行するのだが、これだと終了した仮想環境は表示されないので、-aオプションを付けて実行してやる

docker ps -a
  
CONTAINER ID      IMAGE                 COMMAND             CREATED             STATUS     PORTS  NAMES
bd5553deff81      renbird/sl65:latest   /bin/bash           22 minutes ago      Exit 0     jolly_brattain

正常に終了してるのでステータスがExit 0となっている。 不要な終了プロセスは

docker rm [CONTAINER ID]で削除する事が出来る

シェルを立ち上げる

このままでは一発や芸人のように実行したら終了となるのでシェルを起動して仮想環境につなげてみる

docker run -i -t contos /bin/bash

bash-4.1# 

コンソールが仮想環境に繋がりましたね。exitすると仮想環境が終了する。

終了させないようにするには[Ctrl]+[p] → [Ctrl]+[q]で抜ける。

設定後の独自イメージ作成

UPDATEや独自の設定をしたイメージを作成したい場合は次のコマンドで作成が可能

docker commit [CONTAINER ID] [IMAGE NAME]

作成したイメージを確認するには

docker images

作成したイメージが存在しただろうか?不要なイメージは次のコマンドで削除しておこう

docker rmi [REPOSITORY]

作成したイメージから起動をしたい場合は

docker run -t -i -d [IMAGE NAME] /bin/bash

先ほどのようにいきなり仮想環境に繋がらなかった人は正解。

-dコマンドによりDeamonモードで起動したからだ。

仮想環境に接続

このようにデーモンモードで抜けたり、[Ctrl]+[p] → [Ctrl]+[q]で仮想環境から抜けた場合、仮想環境に接続するには以下のコマンドを実行する

docker attach [CONTAINER ID]
lxc/docker.1398150496.txt.gz · 最終更新: 2014/04/22 07:08 by miyako



DMM.com電子書籍

CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0

- Media Kiss Lab -