Запуск кластера Hazelcast в Docker Swarm возможен, вам просто нужно настроить правильные сетевые интерфейсы на членах.
См. Это сообщение в блоге, описывающее конфигурацию в неорганизованных Docker средах: https://hazelcast.com/blog/configuring-hazelcast-in-non-orchestrated-docker-environments/
Если вы не хотите использовать сторонний плагин обнаружения (или напишите свой собственный), используйте механизм соединения TCP-IP, в котором вы явно указываете IP-адреса участников.
Ключевым моментом в конфигурации является следующее: Участник должен знать свой publi c адрес под которым это видно для других участников. Вы можете настроить адрес publi c как системное свойство hazelcast.local.publicAddress
. Значение может также содержать номер порта - например,
-Dhazelcast.local.publicAddress=192.168.1.12:11701