Я перевожу свое приложение флеш-сервера в докер-контейнер с docker-compose и испытываю проблему после того, как я транслирую вывод в текстовую область (раньше этого не происходило, когда мое приложение флешки было размещено на Linux-боксе).
Когда я запускаю событие (нажатие кнопки), оно отправляет запрос ajax в приложение фляги, приложение фляги непрерывно передает поток обратно клиенту, все это работает (и я вижу поток в моем текстовом поле),
Проблема возникает, когда запрос выполнен (xhr.readyState == XMLHttpRequest.DONE
), я получаю usb.js:521 POST http://myserver:8000/stream net::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK)
и текстовое поле становится пустым (ранее я вижу весь текстовый вывод, но когда завершается ошибка ajax, и текстовое поле становится пустым).
Я читал онлайн, и многие говорили, что обновление nginx исправляет эту ошибку.Так что в настоящее время в моем Docker нет прокси-сервера, я использую его только с Gunicorn. Нужно ли мне добавлять прокси, такой как nginx, в docker-compose?Я думал, что одного GUnicorn будет достаточно для моего док-контейнера?
Я также читал это https://rhodesmill.org/brandon/2013/chunked-wsgi/
Это, кажется, моя проблема, но я не уверен, как это могло бытьисправлено.
Вот мой docker-compose:
version: "2.1"
services:
db:
image: mysql:5.7
env_file: .env
ports:
- "3306:3306"
environment:
- MYSQL_DATABASE=mydb
- MYSQL_USER=user
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
volumes:
- ./db:/docker-entrypoint-initdb.d/
- my-datavolume:/var/lib/mysql
app:
build: ./
user: root
ports:
- "2222:22"
- "5000:5000"
- "5005:5005"
depends_on:
- "db"
command: sh -c "/usr/local/bin/upstart.sh"
volumes:
- ./upstart.sh:/usr/local/bin/upstart.sh
volumes:
my-datavolume: