じゃあ、おうちで学べる

本能を呼び覚ますこのコードに、君は抗えるか

冷凍うどんとDockerとか…。

概要

うちの冷蔵庫には常時冷凍うどんが入っており、ちょっと小腹がすいた時にはとても重宝しています。一人暮らしを初めてこの冷凍うどんという存在を知った時は私の中で軽い革命が起こりました。これが稀に中途半端なうどん屋より旨いと感じるときがある。食べたい時に食す、これが1番の調味料という訳です。

インフラ構築もインフラを構築したいとか酔狂な人間以外は、食したい時に食したいものでして。まぁ、随分と助けられているわけでして。とりあえず、Dockerのレシピ集を個人で徒然成るままにまとめるわけですがあんまり需要もないわけでして。

docker version

Dockerのバージョン表示

$ docker version 

docker info

コンテナ・イメージ数、ユーザ情報など現在の情報表示

$ docker info

docker run

$ docker run -h nwiizo -i -t ubuntu /bin/bash

-h ホスト名。

--name でコンテナに名前を付けられる。

-i を付けると起動時にSTDOUT を開きっぱなしにしてくれる。

--rm これを付けると docker を終了させると同時に docker コンテナを削除してくれる。

-t 仮想端末を割り当てる-iと大体一緒に使います。

-d を使う事でバックグラウンドで起動できる。

-c コンテナ起動時に CPU 相対的使用率を指定する

-m を使う事でメモリ容量を指定できる。単位は b,k,m,g です。

-v でホストにマウントできます。

docker run -v [ホストディレクトリの絶対パス]:[コンテナの絶対パス] [イメージ名] [コマンド]

ホストの/lib/modulesをコンテナの/lib/modulesにマウントします。

docker run -v /lib/modules:/lib/modules dummy-img /bin/bash

-pでポートの指定

Nginxの実行(8080番で実行)

$ docker run -p 8080:80 nginx

docker ps

現在動いているコンテナ一覧を表示

$ docker ps

停止しているコンテナも含めたすべてのコンテナ一覧を表示

$ docker ps -a

docker start

コンテナを起動してログイン

$ docker start [ContanerID]

-a を付けると attach します。

$ docker start -a [ContanerID]

docker rm

停止中のコンテナを一気に削除する

$ docker rm `docker ps -aq`

コンテナをすべて強制的に削除する

$ docker rm -f `docker ps -aq`

docker pull

イメージを引っ張ってくる

$ docker pull ubuntu
$ docker pull centos
# タグを使ってイメージのバージョンを指定する
$ docker pull ubuntu:16.04

docker build

「Dockerfile」ファイルからイメージを作成まで実行します。

書式としてはこんな感じ…。

$ docker build [ -t {イメージ名} [ :{タグ名} ] ] {Dockerfileのあるディレクトリ}

キャッシュをオフ

$ docker build --no-cache=true

docker images

イメージの一覧を表示する

$ docker images

docker rmi

イメージの削除

$ docker rmi <ImageID>

Docker commit

$ docker commit [options] [containar ID] [repository:tag]

リンク集

コンテナ操作

  • attach コンテナにアタッチ
  • cp コンテナ・ホスト間でのファイルコピー
  • create コンテナ作成
  • diff コンテナのファイルシステム差分表示
  • exec 既存コンテナでコマンド実行
  • export コンテナをtarファイルで保存
  • history コンテナの履歴を表示
  • import tarファイルからコンテナ作成
  • inspect コンテナ・イメージの情報表示
  • kill コンテナの終了
  • logs コンテナのログ(出力)取得
  • pause コンテナの一時停止
  • port 公開ポートの表示
  • ps コンテナ一覧表示
  • rename コンテナ名の変更
  • restart コンテナの再起動
  • rm コンテナの削除
  • run コンテナの実行
  • start コンテナの実行
  • stats コンテナのリソース利用状況表示
  • stop コンテナの停止
  • top コンテナの実行状況表示
  • unpause コンテナの再開
  • update コンテナの設定を動的に変更
  • wait コンテナの終了を待つ

イメージ操作

  • build イメージのビルド
  • commit コンテナからイメージ作成
  • images イメージ一覧表示
  • inspect コンテナ・イメージの情報表示
  • load tarファイルからイメージ作成
  • rmi イメージの削除
  • save イメージをtar保存
  • tag イメージにタグ名を設定

Docker Hub(レジストリ)

ネットワーク

ボリューム操作

Swarmクラスタ

プラグイン

その他

最後に

徐々に追加して行きたい!!!

参照

Docker ドキュメント日本語化プロジェクト — Docker-docs-ja 1.12.RC ドキュメント