为Docker容器指定一个固定的IP地址

我使用部署在Docker容器中的pika + rabbitMQ为我正在开发的分布式系统提供消息传递基础结构。

我已经安装了相关的软件,但是,我需要一种方法来给我的RabbitMQ服务添加一个静态IP地址(请参阅下面的代码片段) – 但似乎无法做到这一点 – 似乎这不是一件容易的事情要做(甚至可能做不到) 。

我需要一个静态IP地址,以便下面的代码可以工作。

connection = pika.BlockingConnection(pika.ConnectionParameters(host ='172.17.0.2'))

如果真的不可能将一个静态地址添加到正在运行的容器 – 也许有一种方法可以查询docker(我想我记得看到一个inspect命令的标志,允许检索邮件容器/服务的IP地址,然后我可以通过shell脚本传递给生产者/消费者。

话虽如此,后一种方法对于重新启动(消息传递机器)等是不健壮的,所以如果可能的话,我宁愿使用静态IP解决scheme。