initial setup of dev/prod envs
This commit is contained in:
commit
3a07c4ca3e
4 changed files with 64 additions and 0 deletions
14
.env.dev-sample
Normal file
14
.env.dev-sample
Normal file
|
@ -0,0 +1,14 @@
|
|||
FLASK_ENV=development
|
||||
FLASK_APP=forest/__init__.py
|
||||
APP_FOLDER=/usr/src/app
|
||||
|
||||
SQL_HOST=db
|
||||
SQL_PORT=5432
|
||||
DATABASE=postgres
|
||||
|
||||
POSTGRES_USER=forest
|
||||
POSTGRES_PASSWORD=forest123
|
||||
POSTGRES_DB=forest_dev
|
||||
|
||||
DATABASE_URL=postgresql://forest:forest123@db:5432/forest_dev
|
||||
|
14
.env.prod-sample
Normal file
14
.env.prod-sample
Normal file
|
@ -0,0 +1,14 @@
|
|||
FLASK_ENV=production
|
||||
FLASK_APP=project/__init__.py
|
||||
APP_FOLDER=/home/app/web
|
||||
|
||||
SQL_HOST=db
|
||||
SQL_PORT=5432
|
||||
DATABASE=postgres
|
||||
|
||||
POSTGRES_USER=forest
|
||||
POSTGRES_PASSWORD=forest123
|
||||
POSTGRES_DB=forest_prod
|
||||
|
||||
DATABASE_URL=postgresql://forest:forest123@db:5432/forest_prod
|
||||
|
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
*.pyc
|
||||
__pycache
|
||||
.DS_Store
|
||||
.env.dev
|
||||
.env.prod
|
31
README.md
Normal file
31
README.md
Normal file
|
@ -0,0 +1,31 @@
|
|||
### Development
|
||||
|
||||
Uses the default Flask development server.
|
||||
|
||||
1. Rename *.env.dev-sample* to *.env.dev*.
|
||||
1. Update the environment variables in the *docker-compose.yml* and *.env.dev* files.
|
||||
- (M1 chip only) Remove `-slim-buster` from the Python dependency in `services/web/Dockerfile` to suppress an issue with installing psycopg2
|
||||
1. Build the images and run the containers:
|
||||
|
||||
```sh
|
||||
$ docker-compose up -d --build
|
||||
```
|
||||
|
||||
Test it out at [http://localhost:5000](http://localhost:5000). The "web" folder is mounted into the container and your code changes apply automatically.
|
||||
|
||||
### Production
|
||||
|
||||
Uses gunicorn + nginx.
|
||||
|
||||
1. Rename *.env.prod-sample* to *.env.prod* and *.env.prod.db-sample* to *.env.prod.db*. Update the environment variables.
|
||||
1. Build the images and run the containers:
|
||||
|
||||
```sh
|
||||
$ docker-compose -f docker-compose.prod.yml up -d --build
|
||||
```
|
||||
|
||||
Test it out at [http://localhost:1337](http://localhost:1337). No mounted folders. To apply changes, the image must be re-built.
|
||||
|
||||
### More info:
|
||||
Check out the [post](https://testdriven.io/blog/dockerizing-flask-with-postgres-gunicorn-and-nginx).
|
||||
|
Loading…
Reference in a new issue