작성
·
1.1K
1
docker-compose run nginx 로 컨테이너를 올리면
복수개의 컨테이너가 올라가는데요
그림처럼 컨테이너 이름은 다르지만 service name 이 동일하게 실행되는게 보입니다.
doxker-compose exec 로 특정 컨테이너에 무언갈 하고 싶은데 doxker-compose exec 뒤에 Service Name 를 적어야 하니 구분을 할수가 없는데 어떻게 가능 할까요?
답변 1
0
안녕하세요!
docker-compose exec
로 특정 컨테이너에서 어떤 작업을 하고 싶은데, Service Name이 똑같아 보여서 구분하기 어려운 상황을 질문해주셨네요.
먼저, 이름이 n2
인 컨테이너가 어떤 방법으로 실행하신 건지 궁금합니다. docker-compose up
으로 실행한 컨테이너의 이름 규칙은 test1-nginx-1
과 같습니다. (이름 마지막에 -숫자
가 붙습니다.)
둘째로 docker-compose exec [NAME]
에서 NAME
에 들어갈 이름은, docker-compose.yml
에 설정해 둔 이름과 같습니다. 만약 docker-compose.yml
파일을 다음과 같이 작성했다면,
version: '3'
services:
web:
image: nginx
proxy:
image: nginx
docker-compose up
을 실행했을 때 nginx
컨테이너가 두 개 실행될 텐데요. docker-compose exec web bash
혹은 docker-compose exec proxy bash
명령어로 각 컨테이너에 대해 명령어를 실행할 수 있습니다.
궁금증이 해결되지 않았다면 docker-compose.yml
파일도 답글로 달아주시겠어요? 같이 살펴보면 좋겠습니다.