Docker는 처리를 위해 호스트의 요청을 각 컨테이너로 어떻게 전달합니까?
大家讲道理
大家讲道理 2017-04-25 09:01:25
0
3
741

Docker를 가지고 놀기 시작한 지 며칠 안 됐어요.

예를 들어 웹 서버를 만들고, 호스트에 nginx를 배치하고, docker에 여러 개의 php-fpm 컨테이너를 구축한다면, 로드 밸런싱을 위해 nginx를 사용하여 컨테이너에 전달할 계획입니다(테스트용, 재미삼아) ). 그러다가 nginx 구성에 적힌 전달 주소가 쓰기 어렵다는 사실을 발견했습니다. 컨테이너가 다시 시작될 때마다 새로운 IP가 자동으로 재할당되므로 호스트 nginx 구성에 작성한 전달 주소가 잘못됩니다. . .

인터넷에서 컨테이너를 고정 IP로 설정할 수 있다는 내용을 많이 봤는데, 네트워크 카드를 직접 구해야 하는데, 완벽하지 않아서 고민이 많아요. 재시작 후 재할당된다고 하므로, 한 번 더 실행해야 합니다. . .

좋은 아이디어가 있으신가요? 답변해주세요

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

모든 응답(3)
阿神

두 가지 방법:

  1. php 컨테이너는 -p를 사용하여 포트를 호스트로 전송한 다음 nginx가 이를 localhost:[매핑된 포트]

  2. 로 전달합니다.
  3. 컨테이너에 nginx를 넣고 php 컨테이너를 연결한 후 nginx를 linkname:port로 전달합니다

阿神

LZ는 호스트에서 nginx를 실행해야 하는 것 같습니다. 여기에 동적으로 업스트림을 변경할 수 있는 것이 있습니다. docker inspect과 결합하면 얻을 수 있습니다:

https://github.com/yzprofile/...

Ty80

으아악

이 명령으로 IP를 얻을 수 있습니다. nginx 구성을 직접 생성하는 자동화된 스크립트를 작성하세요

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿