Q:

AWS ALB + Django + Gunicorn +- Nginx?

I am building an environment in AWS to host a django application. I am trying to figure out if I should be using nginx as part of the build. 
I am listing a few different environments below for example/comparison purposes. All environments make use of an AWS ALB.
ENV 1
ALB -> dockercontainer running django

+uses inbuilt django webserver, static files working
-inbuilt django webserver not made for production use

ENV 2
ALB -> dockercontainer running django/gunicorn

+uses gunicorn (not django webserver)
-static files NOT working

ENV 3
ALB -> dockercontainer running django/gunicorn + nginx
note: I have not tested this configuration yet.

+uses gunicorn (not django webserver)
+uses nginx
static files should work 

I read this stackoverflow post and understand the differing roles of gunicorn vs nginx.
I am being advised by a colleague that ENV 2 is all I need, that I should be able to serve static files with it, that the ALB provides similar functionality to NGINX. Is this correct? 

A:

Just to clarify - "ALB" stands for Application Load Balancer, which is differentiated from the older Elastic Load Balancer in that traffic can be routed based on URI.
However, whichever load balancer you're referring to, I believe you'll need nginx in the mix, as AWS load balancers don't offer any file serving capability. If your static files have a consistent URI pattern, you might be able to use an ALB to serve static files from S3 or CloudFront.

