- select
- 스프링부트
- spring mvc
- 1차원 배열
- 데이터베이스
- DI
- 스프링
- spring boot
- spring security 6
- string
- java
- Docker
- @transactional
- join
- ORM
- hibernate
- springboot
- 자바
- mysql
- sql
- 문자열
- SSL
- 프로그래머스
- static
- jpa
- Django
- PYTHON
- nginx
- spring
- AWS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
개발하는 자몽
[Docker] docker compose 명령어 본문
`docker compose up`만 계속 써오다가 `down` 명령어를 알게 되어 정리해 본다.
docker compose down
$ docker-compoese down [OPTIONS] [SERVICES]
실행 중인 컨테이너를 멈추고(stop) `up` 으로 생성된 컨테이너, 네트워크, 볼륨, 이미지들을 제거한다(remove).
컨테이너가 삭제되는 것이므로 당연히 데이터도 다 지워진다.
디폴트로 제거되는 것들
- `compose` 파일에 정의된 서비스에 대한 컨테이너
- `compose` 파일의 `network` 섹션에 정의된 네트워크
- 기본 네트워크(사용되는 경우)
단, 외부에서 정의된 네트워크와 볼륨은 절대 제거되지 않는다.
docker compose stop/start
컨테이너를 삭제하고 싶지 않고, 멈추고만 싶다면 아래 명령어를 사용하자.
$ docker-compose stop [OPTIONS] [SERVICE...]
이렇게 멈춘 컨테이너는 아래 명령을 통해 다시 시작할 수 있다.
$ docker-compose start [SERVICE...]
docker compose build/up
아래 명령어는 `compose` 파일에서 필요한 이미지를 찾아서 빌드한다.
$ docker compose build [OPTIONS] [SERVICE...]
- 서비스가 빌드되고 나면 `project_service` 형식으로 태그 된다.
- `compose` 파일이 이미지 이름을 지정한다면, 이미지는 해당 이름으로 태그 되며 사전에 변수를 대체한다.
- 서비스의 `Dockerfile`이나 빌드 디렉토리의 내용을 변경했다면, 다시 빌드하기 위해 해당 명령어를 실행해야 한다.
아래 명령어는 `compose` 파일에서 서비스에 필요한 모든 컨테이너를 생성한 후 시작한다.
$ docker-compose up [OPTIONS] [SERVICE...]
명령이 종료되면 모든 컨테이너가 멈춘다. `up` 뒤에 `--detach` 옵션을 추가하면 컨테이너가 백그라운드에서 시작되므로 실행 상태를 유지할 수 있다.
에러가 발생하는 경우, 해당 명령의 종료 코드는 `1`이다. `SIGINT`(ctrl + c) 나 `SIGTERM`를 사용하여 중지시키는 경우, 컨테이너는 중지되며, 종료 코드는 `0`이다.
모든 이미지를 새로 빌드하여 컨테이너를 생성할 경우 아래 명령어를 사용한다. 보통 소스 코드 수정이 있는 경우, 이미지를 다시 빌드해야 하므로 아래처럼 진행한다.
$ docker-compose up --build // 도커 이미지 빌드 후 up
docker docs
`down` : https://docs.docker.com/engine/reference/commandline/compose_down/
`stop` : https://docs.docker.com/engine/reference/commandline/compose_stop/
`start` : https://docs.docker.com/engine/reference/commandline/compose_start/
`build` : https://docs.docker.com/engine/reference/commandline/compose_build/
`up` : https://docs.docker.com/engine/reference/commandline/compose_up/
참고
'Architecture & Tool > Docker' 카테고리의 다른 글
[Docker] image, container, Dockerfile, docker compose, (0) | 2024.02.03 |
---|---|
[Docker] 도커 <none>/dangling image 삭제 (1) | 2023.11.03 |
[Docker/Spring] Dockerfile 작성과 Docker에서 SpringBoot 빌드하기 (0) | 2023.05.25 |
[AWS EC2/Docker] EC2 생성, EC2에 Docker 설치, Docker에 MySQL 띄우기 (0) | 2023.05.20 |