I container docker di Sitecore 10 non possono comunicare tra loro

Aug 21 2020

Ho provato ad avviare l'installazione di Sitecore 10 da docker-compose in docker-examples repository .

Compose non funzionava dopo aver fatto girare i primi 5 contenitori: solr, mssql, id, xconnect, cm.

Dopo alcune indagini, ho scoperto che i container non possono comunicare tra loro. Quindi, ad esempio, il contenitore cm non può eseguire il ping del contenitore mssql.

docker exec sitecore-xp0_cm_1 ping mssql

Risposte

6 vzaverugo Aug 21 2020 at 00:47

Sembra che potrebbe essere correlato alle politiche di sicurezza all'interno della nostra azienda poiché sono stato in grado di riprodurre lo stesso comportamento su altre macchine all'interno dell'azienda. E funziona bene su macchine non aziendali.

La soluzione che ha funzionato per me è stata quella di aggiungere nomi host a ogni contenitore. per esempio:

  mssql:
    hostname: mssql
    isolation: ${ISOLATION}

...

  solr:
    hostname: solr
    isolation: ${ISOLATION}

...

  cm:
    hostname: cm
    isolation: ${ISOLATION}

Le modifiche complete possono essere trovate qui .

Si noti che l'aggiunta del nome host in questo modo renderà i contenitori accessibili dal computer host, quindi ciò potrebbe causare conflitti se si tenta di avviare più repository con gli stessi ID contenitore.

1 ChandraSekaranV Aug 26 2020 at 01:44

@vzaverugo Il nostro team interno ha trovato una soluzione alternativa impostando l'indirizzo IP delle voci dell'host docker su qualcosa di reale come 1.1.1.1 o 8.8.8.8 invece di 127.0.0.1 e arrestando completamente IIS. Questo sembra funzionare bene all'interno dei nostri laptop aziendali configurati con alcune politiche.