Windows 환경에서 Docker 이미지를 빌드하고, 삭제하는 배치파일(.bat)을 만들어보자.
다수의 프로젝트를 빌드하는데 Docker Compose 를 사용하지 않았을 경우 참고

도커 이미지 생성

Docker command line

1
docker build -t test-app1:0.1 .

docker-build.bat

1
2
3
4
5
6
7
8
@echo CREATE DOCKER IMAGES
cd ./testApp1
docker build -t test-app1:0.1 .
cd ./testApp2
docker build -t test-app2:0.1 .
cd ./testApp3
docker build -t test-app3:0.1 .
docker images

도커 컨테이너 중지, 삭제, 이미지 모두 삭제

Docker command line

모든 컨테이너 중지

1
docker stop $(docker ps -q)

모든 컨테이너 제거

1
docker rm $(docker ps -aq)

이미지 전체 삭제

1
docker rmi $(docker images -q)

docker-remove.bat

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@echo DELETE DOCKER IMAGES
IF "%1"=="c" (
@echo Only remove containers !!!
goto c
) ELSE (
goto all
)

:c
FOR /f "tokens=*" %%i IN ('docker ps -aq') DO docker rm %%i
GOTO:EOF

:all
FOR /f "tokens=*" %%i IN ('docker ps -aq') DO docker stop %%i
FOR /f "tokens=*" %%i IN ('docker ps -aq') DO docker rm %%i
FOR /f "tokens=*" %%i IN ('docker images --format "{{.ID}}"') DO docker rmi %%i
GOTO:EOF

파라미터를 받는 케이스를 추가했다.

c 파라미터를 같이 넘길 경우 컨테이너만 삭제되도록 함.

1
./docker-remove.bat c

멀티 컨테이너 구성을 할 경우에는 Docker Compose 를 사용하는게 좋다.
다만 맥이나 리눅스 환경이 아니라 윈도우 환경에서 docker-compose 로 구성하기 전이라면 참고.