Estoy usando docker-compose para dos contenedores y lo ejecuto usando docker-compose up -d
Pero cuando trato de ver sus registros con docker-compose logs -f
, solo me muestra los registros de uno de los contenedores. Intenté ejecutar el otro contenedor individualmente y muestra los registros bien. Agradezco cualquier ayuda.
json-file
(predeterminado) o journald
?docker-compose version
?docker-compose.yml
?journald
docker-compose version 1.11.2, build dfed245
docker-py version: 2.1.0
CPython version: 2.7.13
OpenSSL version: OpenSSL 1.0.1t 3 May 2016
version: '2'
services:
service-whose-logs-are-not-showing:
ports:
- "5553:5554"
image: image-name
command: python3.4 /path/pythonfile.py
volumes:
- /path1:/path2
- /path3:/path4
user: "username"
extra_hosts:
- "mxgateway:172.16.1.1"
restart: always
service-whose-logs-are-showing:
image: image-2-name
command: <command>
restart: always
Tenga en cuenta que si ejecuto image-name
solo, los registros aparecen bien.
Gracias.
Hola, me acabo de dar cuenta de que era un problema que Python no limpiaba su stdout. Terminé agregando el siguiente código a mi docker-compose.yml
environment:
- PYTHONUNBUFFERED=1
¿Sabes si esto es algo común que suceda con Docker?
Oh Dios, pasé un buen rato persiguiendo esto :) Me sucedió mientras usaba Flask, tuve que presionar guardar en el código de Python para que el servidor se reiniciara y eliminara los rastreos de errores acumulados.
Muchas gracias @bibiteix
Comentario más útil
Hola, me acabo de dar cuenta de que era un problema que Python no limpiaba su stdout. Terminé agregando el siguiente código a mi
docker-compose.yml
¿Sabes si esto es algo común que suceda con Docker?