dockerでよく使うコマンドを自分用にメモしました。
docker実行
イメージを取得して実行
$ docker run [イメージ名]:[TAG名]
localにイメージがない場合、ダウンロードしてコンテナを作成して実行します。
※TAGを指定しないで実行するとlatestがダウンロードされる
pull(イメージ取得) create(コンテナ作成)start(コンテナ実行)を同時におこなうコマンド
仮のコンテナを作成して実行
$ docker run --name [コンテナ名] -it -d --rm [イメージ名] /bin/bash
起動しているコンテナのシェルを操作する
$ docker exec -it [コンテナ名] /bin/bash
シェルから抜けるときはexitコマンド
ctrl p ctrl qで抜ける
イメージ操作
イメージ取得
$docker pull [イメージ名]:[タグ名]
タグを指定しない場合、latestタグがダウンロードされる
イメージ一覧
$ docker images
イメージ詳細
$ docker inspect [イメージ名またはID]
イメージ削除
$ docker rmi [イメージ名またはID]
オプション -f 強制削除
イメージ一括削除
$ docker rmi $(docker images -q)
イメージタグつけ
$ docker tag [元になるイメージ名] [変更後のイメージ名]:[タグ名]
エイリアスのようなものなので同じイメージIDになる
コンテナ操作
コンテナ一覧
$ docker container ls -a
$ docker ps -a
コンテナ削除
$ docker rm [コンテナ名またはID]
コンテナ一括削除
$ docker rm $(docker ps -aq)
コンテナ作成
新規作成
$ docker create --name [コンテナ名] -it [イメージ名] [コマンド]
一時作成
$ docker run --name [コンテナ名] --rm -d [イメージ名]
オプション -d はバックグラウンドで起動。–rmは一時作成
ボリュームを指定してコンテナを作成(バインドマウント)
▼例)コマンドはdockerhub nginxのページから引用
$ docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
オプション
-v [ホスト側ディレクトリ]:[コンテナ側ディレクトリ]:オプション
→ホスト
-d バックグラウンドで起動。
-p [ホスト側ポート番号]:[コンテナ側ディレクション]
ro マンウト先のコンテナに対して読み取り専用の設定をする
コンテナの停止
$ docker stop [コンテナ名またはID]
コンテナの起動
$ docker start [コンテナ名またはID]
コンテナの一時停止
$ docker pause [コンテナ名]
※コンテナの再開
$ docker unpause [コンテナ名]
ファイル操作
$ docker cp [ホスト側コピーしたいファイルのパス] [コンテナ名またはID:コピー先のディレクトリ]
コメント