다음과 같은 도커 작성 파일이 있습니다.
version: '3.2'
services:
service-one:
build: service-one
container_name: service-one
networks:
- my-custom-network
restart: unless-stopped
service-two:
depends_on:
- service-one
build: service-two
container_name: service-two
networks:
- my-custom-network
restart: unless-stopped
networks:
my-custom-network:
driver: l2bridge
이것은 docker-compose-up
모든 컨테이너가 시작되고 서로 네트워크로 연결되어 필요한 경우 0.0.0.0을 통해 호스트에 도달 할 수 있습니다 (아직 컨테이너화 할 수없는 일부 서비스가 있었지만 호스트를 실행해야합니다).
그러나 다른 개발자의 컴퓨터에서 모든 것을 다운로드하고 실행합니다 docker-compose up
. 네트워크를 만들고 기계를 시작하지만 도달 할 수 없습니다. 그가 않는 경우 docker network inspect my-custom-network
, 네트워크가 만들어 보여 않습니다 및 IP 주소가 할당되었습니다하지만 브라우저에 그 IP 주소를 입력, 아무것도 발생합니다.
한 번에 한 대의 컴퓨터를 수동으로 구축하여 기본 "nat"네트워크에 배치하려고 시도했으며 해당 컴퓨터를 배치하면 액세스 할 수 있습니다.
그래서 내 질문은 두 부분으로 추측됩니다.
- 기본 NAT 네트워크를 사용하도록 작성 파일을 다시 작성하면서도 서비스 이름을 호스트 이름으로 이용할 수 있습니까? (서비스 2는 http : // service-one / 을 참조 할 수있을 것으로 기대합니다 ); 크리에이터 업데이트 (사용할 수 없음, 회사 업데이트 시스템 뒤에 있음)에서 여러 개의 nat 네트워크를 만들 수 있지만 Anniversary Edition을 사용하기 때문에 할 수 없습니다.
또는...
- 왜 그의 l2bridge가 작동하지 않습니까? 광산은 잘 작동하고 있습니다. l2bridge의 공식 문서에 따르면 크리에이터 업데이트가 필요하지만 현재 아무도 실행하지 않으며 여전히 내 컴퓨터에서 잘 작동합니다. 동일한 네트워크, 동일한 액세스 권한, 동일한 프록시, 동일한 서브넷, 동일한 DHCP 서버, 동일한 회사 방화벽 구성, 동일한 그룹 정책, 동일한 Windows 업데이트 세트를 사용합니다. 왜 내 일이 아닌 그의 일을 했습니까?