Не стартует контейнер в 2-х экземплярах

Запускаю сервис в 2х экземплярах, причем порты идут +1 к port_starts. Playbook запускаю с ключом -e count=2

На выходе должно получиться 2 контейнера с портами: 0.0.0.0:9010->9000/tcp 0.0.0.0:9011->9000/tcp


- name: Set SOCKET_PORT
  set_fact:
    SOCKET_PORT:
      - "{{ this.ports_start|int + item|int  }}:{{ this.port }}"
  loop: "{{ range(1, count|int+1, 1)|list }}"

TASK [create containers <service>-<version>-<replica_id> for given service] ****************************************************************************************************************************
--- before
+++ after
@@ -1 +1 @@
-running: false
+running: true

changed: [localhost] => (item=1)
failed: [localhost] (item=2) => changed=false
  ansible_facts:
    discovered_interpreter_python: /usr/libexec/platform-python
  ansible_loop_var: item
  item: 2
  msg: 'Error starting container b551c2a0c05ba648ab2f27fff84653fdebcddfdc69f1394569697f92006d9625: 500 Server Error: Internal Server Error ("driver failed programming external connectivity on endpoint registryservice-latest-2 (1d115844e0410b2296bc31f6cf7af166b6e667249d30b3d7650084dbb813cb1d): Bind for 0.0.0.0:9011 failed: port is already allocated")'

Но похоже один и тот же факт перезаписывается и получаю только один контейнер с портами 0.0.0.0:9011->9000/tcp. Как это исправить? Спасибо.


Ответы (0 шт):