[Pulp-dev] Using Gunicorn and Static Files

Eric Helms ehelms at redhat.com
Mon Oct 8 17:55:45 UTC 2018


On Fri, Oct 5, 2018 at 4:45 PM Brian Bouterse <bbouters at redhat.com> wrote:

> Hi Eric, Thanks for writing, see inline.
>
> On Wed, Oct 3, 2018 at 4:28 PM Eric Helms <ehelms at redhat.com> wrote:
>
>> Howdy,
>>
>> When switching a deployment over to use gunicorn, DEBUG = TRUE for
>> serving static files stopped working. I endeavored to follow the production
>> install method using collectstatic. This required setting STATIC_ROOT which
>> appeared to not be set by default.
>>
>>  1) Is there a default value for STATIC_ROOT I can set for collectstatic?
>>
> I think we should set one, and more and more we're having everything live
> in /var/lib/pulp/<somedir>/ so it could have a default of
> /var/lib/pulp/static_media/. Do you have any interest in sending us a PR
> and opening an issue?
>

Sure.


>
>  2) Can gunicorn serve these static files for me?
>>
> I looked into doing this a while back and I reached the conclusion that we
> could but we shouldn't. It is convenient to not have to do anything extra
> to deploy it, but the Django docs say in several places that we should
> expressly not do this. Convenience is more than a nicety, the longer Pulp
> takes to deploy the fewer users we will have. I think the Ansible Installer
> and templates on openshift should let us do it the recommended way (with
> apache or nginx, etc) and have it be just as easy for the user.
> Unfortunately no one has done that ... yet!
>
> Reach out to me on irc if you want any help with any of those things.
>

Can you clarify why the deployment would take longer if the application
itself is serving up the static files?

In a containerized setup, this current model would require a persistent
volume store dedicated just to static files (seems like overkill) and
running a separate webserver just to serve those files. I will agree the
likelyhood of running Apache or Nginx is high to handle SSL and routing for
the user in a deployment, however, I still find the static files part a bit
odd to be required to run the application.

>
>
>> I realize the documentation calls for serving static files via a
>> webserver like nginx or Apache. However, that becomes a bit overkill in
>> something like a container deployment. If I run a separate webserver, then
>> I would run it as a separate container and have to mount the static files
>> volume. This felt like overkill to me to have a persistent volume to store
>> and mount static files instead of the application server providing them for
>> the application.
>>
>> Any thoughts and help are appreciated.
>>
>> Eric
>> _______________________________________________
>> Pulp-dev mailing list
>> Pulp-dev at redhat.com
>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/pulp-dev/attachments/20181008/23cbe57d/attachment.htm>


More information about the Pulp-dev mailing list