(Docker) 'docker compose down' 및 'docker compose up -d'에 대한 설명

윤상혁·2025년 12월 4일

Docker

목록 보기
4/5

https://velog.io/@pilmalion114/Phase-2-5-Docker-%EB%B0%8F-Airflow-DAG%EB%A1%9C-%EC%9E%90%EB%8F%99%ED%99%94%ED%95%98%EA%B8%B0#1-3-3-airflow-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0
->위 사진은 위의 해당 링크에 나오는 내용을 캡쳐한 것이다.

여기서 보면 알 수 있듯이,
'docker compose down(종료)'와 'docker compose up -d(실행)'은
'docker-compose.yaml'파일에 정의된 컨테이너들을 실행/종료하는 명령어임을 알 수 있다.

내가 궁금한 것은 'Docker Desktop'에서 마우스 클릭으로 종료하는 것과
그리고 위 명령어로 터미널을 종료하는 방법
또한 'airflow'는 웹 UI를 가지고 있다고 했으므로 localhost:8080에는 어떠한 영향을 끼치는지 직접 알아보고 싶었다.


1. Docker Desktop에서 수동으로 종료할 때

->이렇게 종료를 시켜보았다.
->컨테이너는 남아있고, 동작만 하지 않는 상태임을 알 수 있다.

->컨테이너를 종료시켰기에, 컨테이너 안에 있는 웹 UI 역시 종료되어 로컬호스트 연결이 해제됨을 알 수 있다.


2. Docker Desktop에서 수동으로 다시 킬 때

->물론 다시 연결되어 웹 UI도 다시 켜짐을 알 수 있다.
->하지만, 시간이 좀 지나야지만 웹에 연결이 됨을 알 수 있다.(이 이유는 뒤에 터미널 부분에서 나온다.)


3. cmd에서 명령어로 종료할 때

-> 'docker-compose.yaml' 파일이 있는 폴더로 cd(change directory)하여 'docker compose down'을 입력하였다.

->수동으로 종료할 때와 차이점은 컨테이너 자체가 사라져버렸다.
->이는 명령어 자체에 '종료하다+제거하다'가 같이 있기 때문이다.

->당연히 웹 연결도 불가하다.


4. cmd에서 명령어로 다시 킬 때


->api server가 완료될 때까지는 웹에 접속이 안된다.
->그래서 수동으로 다시 킬 때 시간이 좀 지나야만 웹에 접속되는 게 이 이유이다.

-> api server가 로딩 완료되니 다시 웹에 연결이 되었다.

-> 물론 마찬가지로 docker desktop에 airflow 컨테이너도 다시 생겼다.


5. 마무리

이렇게 해서 직접

1.docker desktop에서 수동으로 키고/끄기
2.cmd에서 명령어로 키고/끄기

를 경험해보고 결과를 확인해봤다.

이 사소한 차이를 알게 되어서 유익한 시간이 된 거 같다!

profile
통합형 개발자. 기획부터 개발, 자동화까지. 문제를 구조적으로 이해하고, AI를 능동적으로 활용해 본질적인 해결책을 제시하는 사람입니다.

0개의 댓글