2016-06-17 3 views
3

내가 webpages.I는 부두 노동자 도구 상자를 설치 긁어에 도움 시작을 사용하는 this tutorial을 다음입니다 (창 10)을로드하고이 두 단계 한하지 않습니다고정 표시기

$ docker pull scrapinghub/splash 
$ docker run -p 5023:5023 -p 8050:8050 -p 8051:8051 scrapinghub/splash 

내가이 생각을 다음과 같습니다 도커 창에서 메시지가 메시지를 기반으로, 제대로 실행 : 나는`localhost를 열 때

enter image description here

그러나 : 웹 브라우저에서 8050 '을, 그것은 로컬 호스트가 작동하지 않는 말했다. enter image description here

이 경우 무엇이 잘못되었을 수 있습니까? 감사!

답변

3

당신은 당신의 고정 표시기 호스트합니다 (VM)에 포트를 매핑 한,하지만 당신은 실제 "localhost"를 (윈도우 호스트)에 동일한 포트

당신은 그 포트 -를 선언하는 데 필요한 포트 전달하지 않은 Network settings of your VM (예 : 'default') 또는 VBoxManage controlvm commands으로 전달하십시오.

그런 다음 Windows 호스트 (localhost)에서 해당 포트 (VM에서 사용)에 액세스 할 수 있습니다.

boot2docker VM의 IP 주소를 사용하여 동일한 포트에 액세스 할 수 있습니다 (docker-machine ls 참조).

+0

나는 VM'의 '네트워크 설정에서 아무것도 변경하지 않았다. 대신'http : // 192.168.99.100/8050 /'을 사용했는데 제대로 작동합니다. 나는'http : // localhost'를 입력 할 때, 컴퓨터가 내가 IP 주소 192.168.99.100을 특별히 요구하고 있다는 것을 모를 것이라고 생각한다. 고맙습니다! – user3768495

+0

@ user3768495 port-forwarding을 사용하면 localhost를 사용할 수 있습니다. 그 포트가 올바른 도커 - 기계 IP에 매핑 되었기 때문입니다. – VonC

1

@ user3768495 http://192.168.99.100:8050/을 사용하면 실제로 도커 - 기계 IP를 사용하고 있으며이 IP는 네트워크가 아닌 컴퓨터에서만 사용할 수 있습니다. localhost에 매핑하려면 같은 포트를 localhost로 포트 포워딩해야합니다. 나는 같은 문제를 겪고 있었고 아래 링크에서 그 과정을 자세히 설명했다.

https://stackoverflow.com/a/35737787/4820675