Recentemente ho tirato un'immagine nginx:Impossibile utilizzare -lt durante l'esecuzione Nginx Docker o gatto registra
docker pull nginx
posso correre con successo e andare a http://server_name e vedere la pagina "Welcome to Nginx":
docker run -d -p 80:80 nginx
Ma poi quando provo a controllare i registri:
docker exec 6c79549e3eb4f6e5fc06f049b67814ac4560ce2cdd7cc6ae84b44b5ae09a9a05 cat /var/log/nginx/access.log
appende appena ed emette nulla. Lo stesso con il log degli errori. Ora se creo un file test.txt in quella stessa cartella e uso docker exec per (visualizzare) cat il file, eseguo senza problemi o appeso.
Anche se cerco di eseguirlo in modalità interattiva, si blocca solo:
docker run -i -t -p 80:80 nginx
Ancora una volta il terminale si blocca sulla riga successiva senza far nulla, ma sembra funzionare perché posso accedere al nginx benvenuto pagina.
Davvero confuso su cosa sta succedendo, ho provato a cercare questo problema, ma finora non ho trovato nessuna soluzione. Senza essere in grado di visualizzare i registri, sarà molto difficile eseguire il debug :) Inoltre, i registri di accesso non dovrebbero essere spostati su stdout nel contenitore nginx poiché i contenitori della finestra mobile della convenzione eseguono il log in stdout?
Il file '/ var/log/nginx/access.log' esiste nel contenitore? Prova ad entrare nel contenitore ed eseguire i comandi in modo interattivo con 'docker run -i -t -p 80:80 nginx/bin/bash' –
Sì, il file access.log è lì root @ ip-10-232-1 -195: ~/docker-registry/dockerfiles # docker exec d24a412224684434dfe9cf950015619ca4fc397e235602649591e2e5c46f4194 ls /var/log/nginx/access.log /var/log/nginx/access.log – alexfvolk
Esegui 'ls -al' invece di solo' ls' e pubblicare l'output. –