diff --git a/backend/Dockerfile b/backend/Dockerfile index 6dfe114..10162a5 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -1,19 +1,11 @@ -# For more information, please refer to https://aka.ms/vscode-docker-python -FROM python:3.9 +FROM python -EXPOSE 5000 +WORKDIR /opt/ -# Keeps Python from generating .pyc files in the container -ENV PYTHONDONTWRITEBYTECODE 1 +COPY requirements.txt . -# Turns off buffering for easier container logging -ENV PYTHONUNBUFFERED 1 +RUN pip install -r requirements.txt -# Install pip requirements -ADD requirements.txt . -RUN python -m pip install -r requirements.txt - -WORKDIR /app -ADD . /app +COPY /src . -CMD ["flask", "run"] +CMD [ "python", "app.py" ] diff --git a/backend/Dockerfile.bak b/backend/Dockerfile.bak new file mode 100644 index 0000000..7fa027a --- /dev/null +++ b/backend/Dockerfile.bak @@ -0,0 +1,19 @@ +# For more information, please refer to https://aka.ms/vscode-docker-python +FROM python:3.9 + +#EXPOSE 5000 + +# Keeps Python from generating .pyc files in the container +#ENV PYTHONDONTWRITEBYTECODE 1 + +# Turns off buffering for easier container logging +# ENV PYTHONUNBUFFERED 1 + +# Install pip requirements +ADD requirements.txt . +RUN python -m pip install -r requirements.txt + +WORKDIR /app +ADD . /app + +CMD ["flask", "run"] diff --git a/backend/Dockerfile.prod b/backend/Dockerfile.prod new file mode 100644 index 0000000..3eba885 --- /dev/null +++ b/backend/Dockerfile.prod @@ -0,0 +1,12 @@ +FROM python + +WORKDIR /opt/demo/ + +COPY requirements.txt . + +RUN apt-get -y update && apt-get -y upgrade +RUN pip install -r requirements.txt + +COPY /src . + +CMD [ "python", "main.py" ] diff --git a/backend/requirements.txt b/backend/requirements.txt index 11b010b..336fcb4 100644 --- a/backend/requirements.txt +++ b/backend/requirements.txt @@ -1,7 +1,11 @@ click==7.1.2 Flask==1.1.2 +Flask-Login==0.5.0 +Flask-SQLAlchemy==2.5.1 +greenlet==1.1.0 itsdangerous==1.1.0 Jinja2==2.11.3 MarkupSafe==1.1.1 python-dotenv==0.17.1 +SQLAlchemy==1.4.15 Werkzeug==1.0.1 diff --git a/backend/src/app.py b/backend/src/app.py index 07fc55a..66747a3 100644 --- a/backend/src/app.py +++ b/backend/src/app.py @@ -1,8 +1,34 @@ import time from flask import Flask +import os + app = Flask(__name__) +# Read environment variables +if "DEBUG" in os.environ and os.environ["DEBUG"] == 'yes': + debug = True +else: + debug = False +if "HOST" in os.environ: + host = os.environ["HOST"] +else: + host = '0.0.0.0' +if "PORT" in os.environ: + port = int(os.environ["PORT"]) +else: + port = 5000 + + + +@app.route('/') +def home(): + return "Hello World" + @app.route('/time') def get_current_time(): return {'time': time.time()} + + +if __name__ == '__main__': + app.run(debug=debug, host=host, port=port) diff --git a/docker-compose.yml b/docker-compose.yml index 2e20a3f..2d3f675 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -24,5 +24,6 @@ services: ports: - 5000:5000 environment: + DEBUG: "yes" PORT: 5000 - FLASK_DEBUG: 1 + HOST: "0.0.0.0" diff --git a/frontend/issues.sh b/frontend/issues.sh new file mode 100644 index 0000000..86fb9c1 --- /dev/null +++ b/frontend/issues.sh @@ -0,0 +1,30 @@ +# Labels: backend, bug, content, design, duplicate, enhancement, frontend, help wanted, invalid, question, wontfix, +ISSUE_TITLE="Buttons gleichmässig darstellen" +DESC="Die Buttons sollen alle die gleiche Breite haben" +LABELS="design,frontend,enhancement" +DEADLINE="2021-06-23" +tea issue create --title "${ISSUE_TITLE}" --description "${DESC}" --labels "${LABELS}" --deadline "${DEADLINE}" + +ISSUE_TITLE="login backend implementieren" +DESC="" +LABELS="backend,enhancement" +DEADLINE="2021-06-25" +tea issue create --title "${ISSUE_TITLE}" --description "${DESC}" --labels "${LABELS}" --deadline "${DEADLINE}" + +ISSUE_TITLE="registrieren implementieren backend" +DESC="" +LABELS="backend,enhancement" +DEADLINE="2021-06-25" +tea issue create --title "${ISSUE_TITLE}" --description "${DESC}" --labels "${LABELS}" --deadline "${DEADLINE}" + +ISSUE_TITLE="Umfrage erstellen (für neue Teilnehmer)" +DESC="" +LABELS="frontend,enhancement,backend" +DEADLINE="2021-06-25" +tea issue create --title "${ISSUE_TITLE}" --description "${DESC}" --labels "${LABELS}" --deadline "${DEADLINE}" + +ISSUE_TITLE="Datenerhebung der Maus und Tastatur" +DESC="" +LABELS="frontend,backend,enhancement" +DEADLINE="2021-06-27" +tea issue create --title "${ISSUE_TITLE}" --description "${DESC}" --labels "${LABELS}" --deadline "${DEADLINE}" diff --git a/frontend/package.json b/frontend/package.json index 6bbf714..b2f204f 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -39,5 +39,5 @@ "last 1 safari version" ] }, - "proxy": "http://127.0.0.1:5000" + "proxy": "http://localhost:5000" } diff --git a/frontend/src/components/pages/Manual.js b/frontend/src/components/pages/Manual.js new file mode 100644 index 0000000..f35e5fd --- /dev/null +++ b/frontend/src/components/pages/Manual.js @@ -0,0 +1,12 @@ +import React from "react"; +import "../../App.css"; +import Footer from "../../Footer"; + +export default function Manual() { + return ( + <> +
Herzlich willkommen bei meiner Bachelorarbeit. Du kannst dich hier einfach registrieren, sodass du mir ein positives Feedback hinterlassen kannst. Bei der ersten Registrierung geht es darum, dass ich ein paar Sachen über dich kennenlerne. Ich werde diese Fragen strikt trennen mit der eigentlichen Fragestellung. Diese Fragen dienen mir dazu, dass ich einschätzen kann, welche Leute ich befragt habe.
+ +