Por favor, ayúdame a hacer esto bien,
Una red superpuesta en modo de enjambre permite que los contenedores de nodos cruzados puedan verse como si estuvieran en la misma red.
¿Está bien?
Entonces, si tuviera la siguiente configuración:
depends_on: - CM:target ¿Sería capaz de hacer ping target desde CM? Si no, ¿por qué?
Demostración: docker stack deploy -c test.yml test donde test.yml es el siguiente:
version: "3" services: CM: image: alpine command: sh -c 'ping CW' depends_on: - CW networks: - OVNET deploy: placement: constraints: - node.role == manager CW: image: alpine command: sh -c 'ping localhost' networks: - OVNET deploy: placement: constraints: - node.role == worker networks: OVNET: driver: overlay¡Gracias de antemano!
Sí, funciona como cabría esperar. Primero se crea la red, luego se colocan los contenedores de acuerdo con sus restricciones. Esperaría que la primera instancia de CM pudiera fallar ya que CW necesitaría tiempo para extraer la imagen, pero luego funcionaría bien. Los contenedores en la misma red superpuesta pueden comunicarse entre sí a través de sus nombres de servicio a través del DNS incorporado.