Docker 레거시 링크

레거시 --link 기능을 설명하는 문서예요. 컨테이너를 연결해 통신하게 하는 옛 방식으로, 지금은 사용자 지정 네트워크가 권장돼요.

출처: Legacy container links

본문

예전 legacy links(--link)는 컨테이너를 다른 컨테이너에 연결해 통신하게 하는 방식이었어요. 환경 변수로 대상 컨테이너의 주소를 노출하고, 이름 기반 통신을 지원했어요.

예시

$ docker run -d --name db postgres
$ docker run -d --link db:db app

--link db:dbapp 컨테이너에 db라는 별칭으로 db 컨테이너를 연결해요.

특성

  • 링크된 컨테이너 간 연결을 만들고, 몇 가지 환경 변수를 주입해요.
  • 하지만 한 호스트에서만 동작하고, 유연성이 제한적이에요.

권장 사항

Modern Docker에서는 --link 대신 사용자 지정 네트워크 를 사용하는 것을 권장해요. 사용자 지정 bridge 네트워크에서 컨테이너는 이름(DNS)으로 서로를 찾고 통신할 수 있어요.

$ docker network create appnet
$ docker run -d --network appnet --name db postgres
$ docker run -d --network appnet --name app myapp

사용자 지정 네트워크는 컨테이너 재시작에도 안정적으로 이름 해석을 제공하고 격리도 나아요. 새 프로젝트에서는 --link 대신 네트워크를 쓰세요.

더 알아보기