Hortonworks Docker Sandbox环境无法启动

时间:2018-09-06 20:53:14

标签: docker hadoop hortonworks-sandbox

运行docker-deploy-hdp265.sh得到以下控制台输出:

+ registry=hortonworks
+ name=sandbox-hdp
+ version=2.6.5
+ proxyName=sandbox-proxy
+ proxyVersion=1.0
+ flavor=hdp
+ echo hdp
+ mkdir -p sandbox/proxy/conf.d
+ mkdir -p sandbox/proxy/conf.stream.d
+ docker pull hortonworks/sandbox-hdp:2.6.5
2.6.5: Pulling from hortonworks/sandbox-hdp
Digest: sha256:0b34fa5cb197717828d6ffe547c23ad9b1c09f3b953e570e37f6f09809fbf3ba
Status: Image is up to date for hortonworks/sandbox-hdp:2.6.5
+ docker pull hortonworks/sandbox-proxy:1.0
1.0: Pulling from hortonworks/sandbox-proxy
Digest: sha256:42e4cfbcbb76af07e5d8f47a183a0d4105e65a1e7ef39fe37ab746e8b2523e9e
Status: Image is up to date for hortonworks/sandbox-proxy:1.0
+ [ hdp = hdf ]
+ [ hdp = hdp ]
+ hostname=sandbox-hdp.hortonworks.com
+ docker images
+ grep hortonworks/sandbox-hdp
+ awk {print $2}
+ version=2.6.5
+ docker network create cda
+ docker run --privileged --name sandbox-hdp -h sandbox-hdp.hortonworks.com --network=cda --network-alias=sandbox-hdp.hortonworks.com -d hortonworks/sandbox-hdp:2.6.5
e70f8d8900276aceb7ec6e147008940fa54c484d3052c866e325cf40b35fc43d
+ echo  Remove existing postgres run files. Please wait
 Remove existing postgres run files. Please wait
+ sleep 2
+ docker exec -t sandbox-hdp sh -c rm -rf /var/run/postgresql/*; systemctl restart postgresql;
+ sed s/sandbox-hdp-security/sandbox-hdp/g assets/generate-proxy-deploy-script.sh
+ mv -f assets/generate-proxy-deploy-script.sh.new assets/generate-proxy-deploy-script.sh
+ chmod +x assets/generate-proxy-deploy-script.sh
+ assets/generate-proxy-deploy-script.sh
+ uname
+ grep MINGW
+ chmod +x sandbox/proxy/proxy-deploy.sh
+ sandbox/proxy/proxy-deploy.sh
9e3cde914e7ac3fea2399ace4edabf0a1dddb9f898366655b5b2971936d3a6c1
docker: Error response from daemon: driver failed programming external connectivity on endpoint sandbox-proxy (518ef8815ba102794cd93b5ce699d6261827e324e249432cb9bb0d78bc90fcf9): Error starting userland proxy: listen tcp 0.0.0.0:50070: bind: address already in use.

但是端口50070不在我的本地主机上监听:

luog@luog-X510UQR:~/hotonworks_sandbox$ netstat -l
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 localhost:4200          0.0.0.0:*               LISTEN     
tcp        0      0 localhost:27017         0.0.0.0:*               LISTEN     
tcp        0      0 localhost:mysql         0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:netbios-ssn     0.0.0.0:*               LISTEN     
tcp        0      0 localhost:63342         0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:http            0.0.0.0:*               LISTEN     
tcp        0      0 localhost:36977         0.0.0.0:*               LISTEN     
tcp        0      0 localhost:5940          0.0.0.0:*               LISTEN     
tcp        0      0 localhost:domain        0.0.0.0:*               LISTEN     
tcp        0      0 localhost:ipp           0.0.0.0:*               LISTEN     
tcp        0      0 localhost:postgresql    0.0.0.0:*               LISTEN     
tcp        0      0 localhost:8091          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:microsoft-ds    0.0.0.0:*               LISTEN     
tcp        0      0 localhost:6942          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:39423           0.0.0.0:*               LISTEN     
tcp6       0      0 [::]:netbios-ssn        [::]:*                  LISTEN     
tcp6       0      0 [::]:http               [::]:*                  LISTEN     
tcp6       0      0 localhost:6770          [::]:*                  LISTEN     
tcp6       0      0 [::]:5460               [::]:*                  LISTEN     
tcp6       0      0 [::]:5461               [::]:*                  LISTEN     
tcp6       0      0 ip6-localhost:ipp       [::]:*                  LISTEN     
tcp6       0      0 [::]:35323              [::]:*                  LISTEN     
tcp6       0      0 [::]:microsoft-ds       [::]:*                  LISTEN     

1 个答案:

答案 0 :(得分:0)

这是由于Windows动态端口范围所致

有效的解决方案 1-禁用Windows虚拟平台窗体Windows功能(它将要求重新启动) 2-发出这两个命令

netsh int ipv4 set dynamicport tcp start=100000 num=1000
netsh int ipv4 set dynamicport udp start=100000 num=1000

3-再次启用以前禁用的功能