在编写cloudify蓝图时如何正确select“/ bin / bash”选项

我想为RYU控制器编排一个docker集装箱。 我find了一个如何创build和运行效果相当不错的教程,并计划根据教程编写cloudify蓝图。 我没有处理

docker run -i -t -p 0.0.0.0:6633:6633 --name ryu3.15 muzixing/ryu:SDN /bin/bash 

我在丢失“/ bin / bash”的位置。 我试过这种方式

 node_tamplates: ... interfaces: cloudify.interfaces.circle create: implementation: docker.docker_plugin.tasks.create_container inputs: params: stdin_open: true tty: true command: /bin/bash ... 

但是,它完成了一个400客户端错误“没有命令指定”,就像“/斌/ bash”错过了。

我已经阅读了cloudify文档和例子,没有find有效的方法来解决这个问题。 那么有没有人知道适当的选项传递“/ bin / bash”或在哪里我可以学习更多的select?

提前致谢。


更新:

根据cloudify文件,我检查了允许的参数

 def create_container(self, image, command=None, hostname=None, user=None, detach=False, stdin_open=False, tty=False, mem_limit=None, ports=None, environment=None, dns=None, volumes=None, volumes_from=None, network_disabled=False, name=None, entrypoint=None, cpu_shares=None, working_dir=None, domainname=None, memswap_limit=None, cpuset=None, host_config=None, mac_address=None, labels=None, volume_driver=None, stop_signal=None, networking_config=None, healthcheck=None, stop_timeout=None): ... 

在https://github.com/docker/docker-py/blob/master/docker/api/container.py

由于/bin/bash是启动一个terminal,更像一个path,我再次尝试working_dir: /bin/bash 。 问题依然存在。

那么任何精通的人都会喜欢分享一些看到参数的想法吗?

我相信你必须以不同的方式来实施它。

你可以看下面的例子代码:

  some_container: type: cloudify.docker.Container properties: name: some_name image: repository: dockeruser/dockerrepo interfaces: cloudify.interfaces.lifecycle: create: implementation: docker.docker_plugin.tasks.create_container inputs: params: ports: - 8080 stdin_open: true tty: true command: /bin/sleep 20 start: implementation: docker.docker_plugin.tasks.start inputs: params: port_bindings: 8080: 8080 

如果您需要更多示例,请访问http://docs.getcloudify.org/4.0.0/plugins/docker/