😽

私がよく使うDockerコマンド一覧(コンテナ操作編)

2022/11/09に公開約2,000字

コンテナ作成操作関連

以下にいくつかよく使うものを上げましたがrun optionはもっと色々あるので、
DockerのURLを参照してください。

  1. ホスト再起動や意図しないコンテナの停止の時に、自動的に再起動してくれるオプション
docker run --restart=always
  1. コンテナのボリュームをホストにマウント
docker run -v [ホスト側のボリュームパス]:[コンテナ内のパス] [起動したいコンテナイメージ名]
  1. コンテナに外部からアクセス(ポートフォワーディング)
    複数指定することができます
docker run -p [外部ポート]:[コンテナポート]

コンテナへのログインやコマンド実行

  1. コンテナへのログイン
docker exec -it [コンテナID or コンテナ名] /bin/bash
  1. コンテナ内でのコマンド実行
docker exec [コンテナID or コンテナ名] [実行したいコマンド]

コンテナのステータス確認操作

  1. 現在起動しているコンテナの一覧を表示
    起動しているかどうかはSTATUSの欄がUPとなっているかを確認する
docker ps
  1. 停止/起動しているコンテナの一覧を表示
    ※-aは--allの略
docker ps -a

コンテナのログ確認

  1. コンテナのログをcatで表示させるようなものです
docker logs [コンテナ名 or コンテナID]
  1. ログを出力する際に時刻を付加します
docker logs -t [コンテナ名 or コンテナID]
  1. ログをリアルタイムに表示し続ます
docker logs -f [コンテナ名 or コンテナID]
  1. ログの最後から指定した行数を表示
docker logs --tail=[表示行数] [コンテナ名 or コンテナID]

コンテナの削除操作

  1. 停止しているコンテナを削除
docker rm [コンテナ名 or コンテナID]
  1. 起動しているコンテナを削除
    ※停止してから削除が本来は望ましいです。
docker rm -rf [コンテナ名 or コンテナID]
  1. 停止しているコンテナ全てを削除
    -aで停止しているコンテナを全て抽出し、その中から-qでコンテナIDを抽出し削除
    ※起動しているコンテナについてはエラーがでて削除できないので、
     その場合には起動しているコンテナを停止してから実施しましょう。
docker rm $(docker ps -q -a)

コンテナの停止/起動/再起動操作

  1. 起動している特定のコンテナを停止
docker stop [コンテナ名 or コンテナID]
  1. 停止している特定のコンテナを起動
docekr start [コンテナ名 or コンテナID]
  1. 特定のコンテナを再起動
docekr restart [コンテナ名 or コンテナID]
  1. 全てのコンテナを停止
    -qでコンテナIDを抽出してコンテナを停止
docker stop $(docker ps -q)
  1. 全てのコンテナを起動
    -qでコンテナIDを抽出してコンテナを起動
docker start $(docker ps -q)

Docker操作 その他

  1. 停止中のコンテナ、使用されていないネットワーク、使われていないイメージなどなど全て削除してくれる
    ただし一括削除されるので実行する際には気を付けて下さい。。。
docker system prune
  1. 作成したコンテナもしくはイメージ名の詳細情報を表示します
docker inspect [コンテナ名 or コンテナID or イメージID]
  1. コンテナ名を変更
docker rename [変更前のコンテナ名] [変更後のコンテナ名]
GitHubで編集を提案

Discussion

ログインするとコメントできます