Use Uwsgi to serve statics and media
Closed this issue · 12 comments
This will allows us remove NginX and supervisord and the complex orchestration system which is used to coordinate them.
Simple is better than complex
The proposed solution isn't suitable for media: the option allows uwsgi to generate a X-Accel-Redirect
header; we want it to handle that header and serve the file.
Cf. https://docs.polydev.blue/bluetils/media.html#id4 for why the HTTP server MUST NOT serve the files directly.
-1 on this.
rien n'empêche de donner un X-Accel-Redirect au nginx en frontal du docker, vu que les medias ne sont pas contenus dans le docker
@bgelineau nope, breaks abstraction boundaries. The app within the docker MUST NOT rely on the configuration of the nginx outside — would be a pain for integration tests.
Having multiples software running inside the docker is a pain too :(
runit ? https://pypi.python.org/bicti ?
C'est pas une question de solution software pour le faire, mais l'usage. on a une seule image qui va gerer soit les crons, soit les medias, soit les ws, soit ops soit ........
@fbochu Tu n'as pas répondu à #32 (comment) ; comment ça se passe ?
On utilise les offload threads de UWSGI grâce à la directive fastfile
cf https://github.com/Polyconseil/grocker-bluedjango/commit/cde63418ea7139841ae14c4101e3c27151c3b90f#diff-80cbe293a022ccfc2ab5dc1713615dc9R47
Comment pourra-t-on gérer les headers CORS nécéssaires à l'appli www sur le domaine static.* ?
J'ai regardé coté uwsgi, mais il n'y a pas de module qui permette de les ajouter :x
Il est possible d'utiliser https://uwsgi-docs.readthedocs.org/en/latest/InternalRouting.html#addheader