Black Lives Matter. Please consider donating to Black Girls Code today.

Dash app using AWS ECS

I recently started Docker-izing simpler Dash apps and running them on a cluster in AWS. I find it simpler and it allows me to avoid thinking too much about the infrastructure on which it runs.

This is useful if the app only needs network connectivity e.g. it pulls from APIs, S3, SQLAlchemy URI etc. This is not useful if your app needs access to local databases, local storage, etc.

I have put an example on GitHub along with step-by-step instructions on how to create and launch.

The app is a normal Dash app and the simple Dockerfile builds an image with only the things the app needs.

FROM python:3.7-alpine
USER root
WORKDIR /app
ADD . /app
RUN pip install --trusted-host pypi.python.org -r requirements.txt
EXPOSE 8050
ENV NAME World
CMD ["python", "app/app.py"]

How have the rest of you moved toward containerization?