- 単純な起動方法
#
docker run centos /bin/echo 'hello world' hello world #- docker run
- コンテナ内でプロセスを実行する
- centos
- レポジトリ名
- /bin/echo 'hello world'
- 実行コマンド
- TAGが異なるレポジトリがある場合の起動方法
#
「:」以降にTAG名を記述し使い分ける。docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE centoslatest 0c752394b855 2 weeks ago 124.1 MB centos6.4 539c0211cd76 15 months ago 300.6 MB ##
この方法で実行すると指定したコマンドをフォアグラウンドで実行する。またこのコマンドが終了するとコンテナーが停止してしまう。docker run centos CentOS release:latest cat /etc/redhat-release6.5 (Final) #docker run centos CentOS release:6.4 cat /etc/redhat-release6.4 (Final) #- コンテナをバックグラウンドで実行する方法
#
-d(-detach)オプションを使用することでデタッチモードで実行する。この際の出力はコンテナーのIDが出力されている。docker run fdeb793234d7636d3e8c952c200b1476bde04a1aa48b20e551027d7823befa4b #-d centos /bin/sh -c "while true; do echo hello world; sleep 1; done"
dockerのコンテナ起動方法
docker上にcentos環境導入
ここにレポジトリへのリンクがあります。イメージを検索することができます。「show」で「Official」を選択することもできます。また検索結果からタグや情報が記述されたページにも移動できます。
コマンドで「centos」を探す場合は
#となります。出力には「OFFICIAL」があるのですが、WEBで「Official」を選択したことと同じになるオプションは発見できませんでした。docker search centos NAME DESCRIPTION STARS OFFICIAL TRUSTED centos The official build of CentOS. 190 tianon/centos CentOS 5 and 6, created using rinse instea... 23 (以下省略)
#とすれば「STARS」が180以上の「centos」を探せます。またタグを表示するコマンドも発見できませんでした。docker search -s 180 centos
今回はcentosのイメージ(タグ名=latest)を導入します。
#centosのイメージ(タグ名=latest)が導入されたことを確認するにはdocker pull centos:latest Pulling repository centos 0c752394b855: Download complete 511136ea3c5a: Download complete 34e94e67e63a: Download complete #
#とします。docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEcentos latest 0c752394b855 2 weeks ago 124.1 MB #
このイメージでbashを起動するには
#とします。オプションの内容は以下です。docker run -i -t centos /bin/bash
- run
- コンテナ内でプロセスを実行する
- -i
- 標準入力を開いたままにする
- -t
- コンテナの標準入力と擬似端末を接続
- centos
- レポジトリ名
- /bin/bash
- 実行コマンド
dockerのインストール
ここを参考にインストールしました。事前にEPELレポジトリを有効にしておく必要があります。有効にする方法はこちらを参照してください。また(無関係の)dockerパッケージをインストールしている場合docker-ioパッケージとコンフリクトするそうです。
docker-ioをインストールするには以下のコマンドを実行します。今回は5個の関連パッケージもインストールされました。
#yum install docker-io (途中省略) Installed: docker-io.x86_64 0:0.11.1-4.el6 Dependency Installed: bridge-utils.x86_64 0:1.2-10.el6 libcgroup.x86_64 0:0.40.rc1-5.el6_5.1 lxc.x86_64 0:0.9.0-2.el6 lxc-libs.x86_64 0:0.9.0-2.el6 xz.x86_64 0:4.999.9-0.3.beta.20091007git.el6Complete! #
この時点ではdockerデーモンはまだ起動していません。デーモンを起動します。
#service docker start Starting cgconfig service: [OK ] Starting docker: [OK ] #
OS起動時にdockerを起動させたいなら
#とします。chkconfig docker on
EPELリポジトリを追加
EPELはExtra Packages for Enterprise LinuxというエンタープライズLinux用の拡張パッケージです。このパッケージを使用するにはLinuxに対応するバージョンのepel-releaseをここから追加します。今回はx86_64アーキテクチャのCentOS6に追加するのでhttp://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpmをインストールします。
#rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm を取得中 警告: /var/tmp/rpm-tmp.BqKosi: ヘッダ V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY 準備中... ########################################### [100%] 1:epel-release ########################################### [100%] #
登録:
投稿
(
Atom
)