現場でよく使うdockerコマンドを一覧、体系化しました。

Dockerコマンド一覧

docker --version
docker info
docker --help
docker image --help

 

Dockerイメージ

dockerイメージを一覧表示

sudo docker images

Dockerfileからイメージをビルドする

docker build -t docker-xxx

※-t タグ名を指定

※Dockerfileが現在のディレクトリにあるか確認する

※ . = Dockerfileのpathを指定

sudo docker image build -t sample/webrick:latest .
sudo docker image build -t ubuntu20.04/httpd:latest .
sudo docker image build -t linux2/only:2.0.20211223.0 --no-cache .
sudo docker image build -t alinux2.0.20221210.1:2.0.20221210.1 --no-cache .

dockerイメージを一括削除

sudo docker rmi $(docker images -a -q)

dockerイメージを作成する(コンテナ作業後)

sudo docker commit <containerID> <repo:tag>

 

コンテナ

コンテナ削除

docker run --rm -p 8080:80 <imageName>
docker rm <containerID>

 

コンテナ作成

DockerImageからコンテナ作成、コンテナ起動する(フォアグランド実行)

docker container run -p 8000:8000 --name webrick sample/webrick:latest

※左の8000=ローカルのポート、右の8000=Dockerのポート

 

DockerImageからコンテナ作成、コンテナ起動する(バックグランド実行)

sudo docker container run -d -p 8000:8000 --name webrick sample/webrick:latest
sudo docker container run -d -p 80:80 --name apache2 ubuntu20.04/apache2:latest
sudo docker container run -d -p 80:80 --name apache2 ubuntu20.04/httpd:latest

コンテナ起動

Dockerコンテナをインタラクティブモード(対話型)で起動する

--name = 任意のコンテナ名を指定

sudo docker run -it --name centos centos:7 bash
sudo docker container run -it --name linux2 <IMAGE ID>
sudo docker container run -it --rm --name linux2 <IMAGE ID>
sudo docker container run -it --rm --name linux2.0.2022 <IMAGE ID>
sudo docker container run -it --rm --name ubuntu22.04 <IMAGE ID>
sudo docker container run -it --name linux2 <REPOSITORY/TAG>
sudo docker container run -it \
-p 4567:4567 \
--name sinatra \
-v ${PWD}/src:/var/www sample/sinatra:latest

-v=ボリューム

現在ディレクトリ=${PWD}/src

コンテナディレクトリ=/var/www

 

sudo docker container start <containerID>
sudo docker container stop <containerID>
sudo docker container restart <containerID>

 

コンテナにログイン

sudo docker ps
sudo docker container ps
sudo chmod 666 /var/run/docker.sock
suod docker exec -it <cointainerID> bash

 

 

コマンド実行(コンテナ)

Dockerコンテナでコマンドを実行する(ruby -vなど)

sudo docker container exec webrick ruby -v

 

Dockerコンテナのログ確認

docker container logs webrick

 

コンテナをforegroundで起動(created)してrunning状態にする

sudo docker run hello-world

 

コンテナをすべて削除

sudo docker container prune
sudo docker system prune -a
sudo docker container ls -a

 

指定のコンテナを削除

sudo docker rm <containerName>

 

コンテナを止める(webrikコンテナ)

docker container stop webrick

※docker ps -a で STATUSがExitedになることを確認する

 

コンテナ確認

起動しているコンテナを確認する

sudo docker ps

停止しているすべてのコンテナを確認する

sudo docker ps -a

停止しているコンテナを起動する

sudo docker start <containerName>

dockerのstatusを確認する

docker inspect status

 

コンテナ停止

起動しているコンテナをすべて停止する

docker stop $(docker ps -a -q)

dockerを一時停止する

docker pause <containerName>

dockerの一時停止を解除する

docker unpause <containerName>

 

dockerファイルのコピー

ホストマシンのファイルをコンテナ内にコピーする

docker cp hostDir/File containerName(ID):containerDir

 

コンテナ内のファイルをホストマシンにコピーする

docker cp containerName(ID):containerDir/File hostDir

 

 

 

 

関連記事

記事タイトル検索