분리된 Docker 컨테이너에서 Python(2.7) 애플리케이션을 실행할 때(-d 플래그 사용) 사용자에게 다음과 같은 문제가 발생할 수 있습니다. 애플리케이션의 인쇄 문이 어떤 출력도 생성하지 않는 상황.
Python은 기본적으로 버퍼링된 출력을 사용합니다. 즉, 출력을 화면으로 보내기 전에 버퍼에 저장합니다. 분리된 컨테이너에서는 이 버퍼가 충분히 자주 플러시되지 않아 출력이 없을 수 있습니다.
이 문제를 해결하려면 -u와 함께 버퍼되지 않은 출력을 사용할 수 있습니다. 플래그:
CMD ["python", "-u", "main.py"]
이렇게 하면 버퍼링에 관계없이 출력이 즉시 화면에 기록됩니다. settings.
버퍼링되지 않은 출력을 사용하면 인쇄 문이 Docker 로그에 표시됩니다.
docker logs myapp > App started
-u 플래그를 사용하지 않으면 분리된 환경에서 인쇄가 다음과 같이 동작합니다. 컨테이너:
위 내용은 분리된 Docker 컨테이너에 Python 인쇄 출력이 표시되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!