docker

  • イメージの一覧を確認する
docker images
  • イメージをダウンロードする
docker pull centos:centos6
  • イメージを削除する
docker rmi centos:centos6
  • プロセスの一覧を確認する
docker ps
  • 停止中のプロセスも含めて確認する
docker ps -a
  • コンテナを起動する
docker run --name d01 -it centos:centos6 bash
  • コンテナにアタッチする
docker attach d01

※detachはCtrl+p, Ctrl+q
* コンテナを停止する

docker stop d01
  • コンテナを削除する
docker rm d01
  • 起動中コンテナを強制的に削除する
docker rm -f d01
  • バックグラウンドでコンテナ起動
docker run --name d01 -itd centos:centos6 bash
  • ホスト名を指定してコンテナ起動
docker run --name d01 -h d01 -itd centos:centos6 bash
  • ホストにポートをマップしつつ起動する
docker run --name d01 -h d01 -p 192.168.0.1:53:53/udp -itd local:named /usr/sbin/named -fu named
  • コンテナをイメージとして登録する
docker commit d01 local:named
  • コンテナ内でコマンド実行
docker exec -it d01 bash
  • イメージをファイル化する
docker save local:named > named.tar
  • ファイルからイメージをロードする
docker load -i named.tar
  • Dockerfileにてbuildする
docker build -t local:named /docker/named
  • Dockerfileを明示指定してbuild
docker build -t local:named -f /docker/named/Dockerfile.ns1 /docker/named
  • 標準出力をホストのsyslogとして起動
docker run --name d01 -h d01 --log-driver syslog -itd centos:centos6 bash
  • ホストのディレクトリをマウントして起動
docker run --name d01 -h d01 -itdv /data:/data centos:centos6 bash
  • ホストネットワーキングで起動
docker run --name d01 -net host -itd centos:centos6 bash

※ホスト名が変えられなくなる。

  • lxcコンテナを使って起動
docker run --name=d01 --log-driver=syslog --net=none --lxc-conf="lxc.network.type=veth" --lxc-conf="lxc.network.ipv4=192.168.0.2/24" --lxc-conf="lxc.network.ipv4.gateway=192.168.0.254" --lxc-conf="lxc.network.link=br0" --lxc-conf="lxc.network.name=eth0" --lxc-conf="lxc.network.flags=up" -itd local:named /usr/sbin/named -fu named

※dockerを『-e lxc』で起動、ホスト側のNICをブリッジで動かす必要あり。