Ho un'applicazione Web front-end ospitata in Docker. Il backend esiste già ma ha un indirizzo "IP personalizzato", quindi ho dovuto aggiornare il mio file locale/etc/hosts per accedervi. Quindi, dal mio computer locale sono in grado di accedere all'API back-end senza problemi.L'esecuzione della finestra mobile risulta nell'errore "host non trovato nell'upstream"
Ma il problema è che Docker in qualche modo non può risolvere questo "IP personalizzato", anche quando l'host è scritto nel file contenitore (immagine?)/Etc/hosts.
Quando il contenitore Docker avvia vedo questo errore
$ docker run media-saturn:dev
2016/05/11 07:26:46 [emerg] 1#1: host not found in upstream "my-server-address.com" in /etc/nginx/sites/ms.dev.my-company.com:36
nginx: [emerg] host not found in upstream "my-server-address.com" in /etc/nginx/sites/ms.dev.my-company.com:36
aggiorna il file/etc/hosts tramite comando nella Dockerfile, come questo
# install wget
RUN apt-get update \
&& apt-get install -y wget \
&& rm -rf /var/lib/apt/lists/*
# The trick is to add the hostname on the same line as you use it, otherwise the hosts file will get reset, since every RUN command starts a new intermediate container
# it has to be https otherwise authentification is required
RUN echo "123.45.123.45 my-server-address.com" >> /etc/hosts && wget https://my-server-address.com
Quando ho ssh nella macchina per controlla il contenuto attuale di/etc/hosts, la riga "123.45.123.45 my-server-address.com" è davvero lì.
Qualcuno può aiutarmi con questo? Sono il newbee di Docker.
Che messaggio di errore ricevi? Sei dietro un proxy? – VonC
@VonC Il messaggio di errore è 'host non trovato in upstream" ms-test.internal.pricefx.eu "in /etc/nginx/sites/ms.dev.topmonks.com: 36' (già menzionato sopra). Non c'è proxy –
Che comando stai usando per costruire la tua immagine? (Significato, hai creato l'immagine taggata 'media-saturn: dev' in cui è riuscito un' wget ms-test.internal.pricefx.eu?) – VonC