flask-on-dockerFlask + Docker
Dockerizing Flask with Postgres, Gunicorn, and Nginx
Want to learn how to build this?
Check out the post.
Want to use this project?
Development
Uses the default Flask development server.
-
Rename .env.dev-sample to .env.dev.
-
Update the environment variables in the docker-compose.yml and .env.dev files.
- (M1 chip only) Remove
-slim-buster
from the Python dependency inservices/web/Dockerfile
to suppress an issue with installing psycopg2
- (M1 chip only) Remove
-
Build the images and run the containers:
$ docker-compose up -d --build
Test it out at http://localhost:5000. The "web" folder is mounted into the container and your code changes apply automatically.
Production
Uses gunicorn + nginx.
-
Rename .env.prod-sample to .env.prod and .env.prod.db-sample to .env.prod.db. Update the environment variables.
-
Build the images and run the containers:
$ docker-compose -f docker-compose.prod.yml up -d --build
Test it out at http://localhost:1337. No mounted folders. To apply changes, the image must be re-built.
评论