add Dockerfile

This commit is contained in:
2021-06-14 21:55:27 +02:00
parent df74eb8ac5
commit 93794f72c4
5 changed files with 115 additions and 42 deletions

View File

@ -34,7 +34,7 @@ python -m unittest discover ki
Für ein Login ohne LDAP werden die Benutzer aus der [`auth.yml`](./data/auth.yml) benutzt.
### Test-Requests
### Beispiel-Requests
Beispiele brauchen curl und jq.
@ -66,13 +66,52 @@ curl -s \
http://localhost:5000/users/1/profile
```
### Produktionsumgebung
## Docker
### Image bauen
```
docker build --tag ki .
```
### Container starten
Im Beispiel wird die SQLite Datenbank `./data/ki_backend.sqlite` verwendet.
DB-Datei anlegen
```
touch data/ki_docker.sqlite
chmod a+rw data/ki_docker.sqlite
```
Container starten
```
docker run \
--name=ki_backend \
-v ${PWD}/data/ki_docker.sqlite:/app/data/ki_docker.sqlite \
-e SQLALCHEMY_DATABASE_URI='sqlite:///data/ki_docker.sqlite' \
-p 5000:5000 \
ki
```
Skills und Sprachen importieren
```
docker exec ki_backend sh -c "cd /app && /pyroot/bin/flask seed"
```
## Produktionsumgebung
Für die Produktionsumgebung wird [waitress](https://docs.pylonsproject.org/projects/waitress/en/latest/) benutzt.
[`run_prod.py`](./run_prod.py) führt die DB Migrationen aus und startet den Server.
### Quellen
## Quellen
* [`./data/iso_639_1.csv`](https://de.wikipedia.org/wiki/Liste_der_ISO-639-1-Codes)
* [`./data/imgs/flags`](https://github.com/gosquared/flags)