Нестабильный стандартный вывод с докером Python - PullRequest
0 голосов
/ 14 января 2019

У меня есть следующий Dockerfile:

FROM ubuntu:16.04
ENV PYTHONIOENCODING=UTF-8
ENV PYTHONUNBUFFERED=1
ADD . /src
WORKDIR /src
ENTRYPOINT ["python3"]
CMD ["-u", "bot.py"]

Этот dockerfile используется с docker-compose:

version: '3'
services:
  something:
    build: .
    networks:
      - proxy
    volumes:
  - E:\tmp:/src/tmp
ports:
  - "6881-6889:6881-6889/udp"
  - "6881-6889:6881-6889/tcp"
  - "6891:6891/udp"
  - "6891:6891/tcp"
  - "6771:6771/udp"
  - "6771:6771/tcp"
  - "4433-4434:4433-4434/udp"
  - "4433-4434:4433-4434/tcp"
  tor:
    image: "dperson/torproxy"
    networks:
      - proxy
networks:
  proxy:
    driver: bridge

Я запускаю его с помощью докера "Версия 2.0.0.0-win81 (29211) Канал: стабильный Сборка: 4271b9e" в Windows 10: "docker-compose up -d"

В этом скрипте python много записей в stdout. В данный момент я печатаю все с кодом, подобным следующему: "print (" Exception: "+ str (exp), flush = True)"

И я почти каждый раз не могу получить что-нибудь, что было напечатано с «журналами докера». Иногда у меня есть части вывода (в правильном порядке). В основном у меня ничего нет. Почему?

Python 3.5.2

P.S. Извините, сбрасываю все и везде только мои попытки, а не правило.

1 Ответ

0 голосов
/ 15 января 2019

Я нашел основную причину проблемы. У меня было 2 экземпляра одного и того же сценария.

...