docker控制的ambari-agent的端口redirect

我只是想创build一个与ambari代理(和其他程序,如SSH服务器)的docker容器,我添加我的容器到我的Hortonworks数据平台(使用ambari UI)。 问题是,Hortonworks数据平台上的所有框架(如HDFS / Hive / Spark等)使用不同的端口,并使用一个docker容器,我必须手动告诉所有框架的每个端口的端口redirect。 例如,如果使用Hortonworks Sandbox,则必须使用以下命令启动将所有有用端口redirect到的容器:

docker run –name sandbox-hdp –hostname“sandbox.hortonworks.com”–privileged -d \ -p 1111:111 \ -p 1000:1000 \ -p 1100:1100 \ -p 1220:1220 \ -p 1988:1988 \ -p 2049:2049 \ -p 2100:2100 \ -p 2181:2181 \ -p 3000:3000 \ -p 4040:4040 \ -p 4200:4200 \ -p 4242:4242 \ -p 5007: 5007 \ -p 5011:5011 \ -p 6001:6001 \ -p 6003:6003 \ -p 6008:6008 \ -p 6080:6080 \ -p 6188:6188 \ -p 8000:8000 \ -p 8005:8005 \ -p 8020:8020 \ -p 8032:8032 \ -p 8040:8040 \ -p 8042:8042 \ -p 8080:8080 \ -p 8082:8082 \ -p 8086:8086 \ -p 8088:8088 \ -p 8090:8090 \ -p 8091:8091 \ -p 8188:8188 \ -p 8443:8443 \ -p 8744:8744 \ -p 8765:8765 \ -p 8886:8886 \ -p 8888:8888 \ -p 8889: 8889 \ -p 8983:8983 \ -p 8993:8993 \ -p 9000:9000 \ -p 9995:9995 \ -p 9996:9996 \ -p 10000:10000 \ -p 10001:10001 \ -p 10015:10015 \ -p 10016:10016 \ -p 10500:10500 \ -p 10502:10502 \ -p 11000:11000 \ -p 15000:15000 \ -p 15002:15002 \ -p 16000:16000 \ -p 16010:16010 \ -p 16020:16020 \ -p 16030:16030 \ -p 18080:18080 \ -p 18081:18081 \ -p 19888:19888 \ -p 21000:21000 \ -p 33553:33553 \ -p 39419:39419 \ -p 42111:42111 \ -p 50070:50070 \ -p 50075:50075 \ -p 50079:50079 \ -p 50095:50095 \ -p 50111 \ -p 60000:60000 \ -p 60080:60080 \ -p 15500:15500 \ -p 15501:15501 \ -p 15502:15502 \ -p 15503:15503 \ -p 15504:15504 \ -p 15505: 15505 \ -p 2222:22 \ sandbox-hdp / usr / sbin / sshd -D

有没有办法与docker做到这一点? 在hortonworks ambari-agent dockerfile上 ,似乎没有这样的事情。

Interesting Posts