[컴] docker compose 에서 container_name 과 hostname 의 차이

docker compose 의 도커

docker compose 에서 container_name 과 hostname 의 차이

hostname : 이건 그냥 container 내에서 작용한다. 그래서 container 의 shell 로 들어가서 hostname command 를 날리면 여기 설정한 이름이 보인다. 그런데 이녀석은 외부에 영향을 주지 않는다. 즉, 이 hostname 으로 외부에서 이 container 를 접근할 수는 없다는 뜻이다.

container_name : container name 을 set 한다. 이 값을 set 하지 않으면 Docker Compose 가 만들어서 set 한다. services 이름이 보통 container 들끼리의 통신에서 DNS name 으로 쓰인다. (예를 들어 아래 같은 경우 redis) 그런데 여기에 container_name 이 더해지면, redismyredis 둘다 사용할 수 있다.

services:
    redis:
        image: redis
        container_name: myredis

References

  1. docker-compose.yml container_name and hostname - Stack Overflow

댓글 없음:

댓글 쓰기