ben*_*eer 5 networking containers docker singularity-container
我目前正在开发一个分布式图形处理平台,该平台在docker容器内维护一个Akka集群,并且最近被授予访问大型集群的权限以进行测试.不幸的是,这个集群不运行docker,只有奇点.
最初这似乎不是一个问题,因为奇点支持docker图像,但是,由于Akka集群的性质,我必须通过几个环境变量并绑定几个端口.例如,系统中的"分区管理器"将使用以下命令运行:
docker run -p $PM0Port:2551 --rm -e "HOST_IP=$IP" -e "HOST_PORT=$PM0Port" -v $entityLogs:/logs/entityLogs $Image partitionManager $PM0ID $NumberOfPartitions $ZooKeeper
Run Code Online (Sandbox Code Playgroud)
通过查看Singularity文档,我可以看到我可以创建一个'Singularity'文件并指定环境变量,但似乎没有关于绑定自定义端口的任何文档.它也没有解释我如何将参数传递给默认入口点(该项目是使用'sbt docker:publish'编译的,所以我不确定它将在何处重新分配它).
即使这是解决方案,因为有多个actor类型(以及每个类型的几个实例),它会出现指定环境变量,文档中的端口需要模板化,在运行时创建文件,以及为每个单独的actor构建图像.
我确信我已经完全错过了一个页面,它可以很好地将这个docker命令转换成等效的奇点,但我找不到它.