Programming Self-Study Notebook

勉強したことを忘れないように! 思い出せるように!!

Dockerコマンド(ステータス遷移)

f:id:overworker:20200702233743p:plain


ステータスを確認する

docker psコマンド

(よく使う)入力サンプル

docker ps -a

オプションについて

オプション 説明
--all,-a すべてのコンテナを表示

ステータス遷移コマンド

docker create

状態遷移(前) (後)
(イメージ) created
  • 詳細は省略

docker run

状態遷移(前) (後)
(Docker Hub) running
created running

構文

docker container run [実行オプション] イメージ名[:タグ名] [引数]

オプション

  • 対話形式

    オプション 説明
    --attach,-a 標準入力(STDIN)
    /標準出力(STDOUT)
    /標準エラー出力(STDERR)にアタッチする
    --cidfile コンテナIDをファイルに出力する
    --detach,-d コンテナを生成し、バックグラウンドで実行する
    --interactive,-i コンテナの標準入力を開く
    --tty,-t 端末デバイス
  • バックグラウンド

    オプション 説明
    --detach,-d バックグラウンドで実行する
    --user,-u ユーザー名を指定
    --restart=(※1) コマンドの実行結果によって再起動を行う
    --rm コマンド実行完了後にコンテナを自動で削除
    • (※1) -restartオプションで指定できる設定値

      設定値 説明
      no 再起動しない
      on-failure 終了ステータスが0でないときに再起動する
      on-failure:n(回数) 終了ステータスが0でないときにn回再起動する
      always 常に再起動する
      unless-stopped 直近のコンテナが停止状態でなければ、常に再起動する
  • ネットワーク設定

    オプション 説明
    --add-host=[ホスト名:IPアドレス] コンテナの/etc/hostsにホスト名とIPアドレスを定義する
    --dns=[IPアドレス] コンテナ用のDNSサーバのIPアドレスを指定
    --expose 指定したレンジのポート番号を割り当てる
    --mac-address=[MACアドレス] コンテナのMACアドレスを指定する
    --net=[bridge/none/container:/host/NETWORK] コンテナのネットワークを指定する
    --hostname コンテナ自身のホスト名を指定する
    --publish,-p[hostのポート番号]:[コンテナのポート番号] ホストとコンテナのポートマッピング
    --publish-all,-p ホストの任意のポートをコンテナに割り当てる
  • リソース

    オプション 説明
    --cpu-shares,-c CPUの仕様の配分(比率)
    --memory,-m 使用するメモリを制限して実行する(単位はb、k、m、gのいずれか)
    --volume=[ホストのディレクトリ]:[コンテナのディレクトリ],-v ホストとコンテナのディレクトリを共有する
  • 環境を指定する

    オプション 説明
    --env=[環境変数],-e 環境変数を設定する
    --env-file=[ファイル名] 環境変数をファイルから設定する
    --read-only=[true/false] コンテナのファイルシステムを読み込み専用にする
    --workdir=[パス],-w コンテナの作業ディレクトリを指定する
    -user=[ユーザー名],-u ユーザー名、またはUIDを指定する

入力サンプル

C:\Users\******>docker container run -it --name "test1" centos:7 /bin/cal
      June 2020
Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
  • 入力コマンドの説明(/bin/cal)

    番号 入力内容 説明
    docker container run コンテナを作成+実行
    -it コンソールに結果を表示させる
    --name "test1" コンテナ名
    centos:7 イメージ名
    /bin/cal コンテナで実行するコマンド
  • centos:7というイメージをもとにtest1という名前のコンテナを生成し実行して、コンテナ内の/bin/calというコマンドを実行する。

docker start

状態遷移(前) (後)
existed running

構文

docker container start [オプション] コンテナ識別子 [コンテナ識別子]

オプション

  • オプション 説明
    --allach,-a 標準出力/標準エラー出力を開く
    --interactive,-i コンテナの標準入力を開く

入力サンプル

C:\Users\******>docker container start test1
test1

docker stop

状態遷移(前) (後)
running existed

構文

docker container stop [オプション] コンテナ識別子 [コンテナ識別子]

オプション

  • オプション 説明
    --time,-t コンテナの停止時間を指定する(デフォルト10秒)

入力サンプル

C:\Users\******>docker container stop -t 20 test1
test1

docker restart

状態遷移(前) (後)
running restarting
restarting running

構文

docker container restart [オプション] コンテナ識別子 [コンテナ識別子]

オプション

  • オプション 説明
    --time,-t コンテナの再起動時間を指定する(デフォルト10秒)

入力サンプル

C:\Users\******>docker container restart -t 20 test1
test1

docker pause

状態遷移(前) (後)
running paused

構文

docker container pause コンテナ識別子

docker unpause

状態遷移(前) (後)
paused running

構文

docker container unpause コンテナ識別子

docker rm

状態遷移(前) (後)
dead removing
existed removing

構文

docker container rm [オプション] コンテナ識別子 [コンテナ識別子]

オプション

  • オプション 説明
    --force,-f 起動中のコンテナを強制的に削除する
    --volumes,-v 割り当てたボリュームを削除する

入力サンプル

C:\Users\******>docker container rm test1
test1

参考文献

以下の本を読みながら、Dockerの勉強を開始しました。

その他の記事へ