diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..c0053b2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,5 @@ +FROM python:3.11.7-slim-bookworm +WORKDIR /app +COPY src . +RUN pip install -r requirements.txt +CMD python3 app.py diff --git a/app.py b/app.py deleted file mode 100644 index 7e132c7..0000000 --- a/app.py +++ /dev/null @@ -1,19 +0,0 @@ -from flask import Flask -from models import db -from user_views import user_bp -from task_views import task_bp -from dotenv import load_dotenv -import os - -load_dotenv() - -app = Flask(__name__) -app.config['SQLALCHEMY_DATABASE_URI'] = os.getenv('DATABASE_URI') -app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True -app.register_blueprint(user_bp) -app.register_blueprint(task_bp) - -db.init_app(app) - -with app.app_context(): - db.create_all() diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..7f9b5cd --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,13 @@ +version: '3.7' + +services: + web: + container_name: todo-api + hostname: todo-api + build: . + env_file: + - src/.env + ports: + - "5000:5000" + volumes: + - ./src/test.db:/app/test.db diff --git a/src/app.py b/src/app.py new file mode 100644 index 0000000..c928785 --- /dev/null +++ b/src/app.py @@ -0,0 +1,18 @@ +from flask import Flask +from models import db +from user_views import user_bp +from task_views import task_bp +from dotenv import load_dotenv +import os + +if __name__ == "__main__": + load_dotenv() + app = Flask(__name__) + app.config['SQLALCHEMY_DATABASE_URI'] = os.getenv('DATABASE_URI') + app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True + app.register_blueprint(user_bp) + app.register_blueprint(task_bp) + db.init_app(app) + with app.app_context(): + db.create_all() + app.run(debug=True, host='0.0.0.0') diff --git a/models.py b/src/models.py similarity index 100% rename from models.py rename to src/models.py diff --git a/requirements.txt b/src/requirements.txt similarity index 100% rename from requirements.txt rename to src/requirements.txt diff --git a/task_views.py b/src/task_views.py similarity index 100% rename from task_views.py rename to src/task_views.py diff --git a/user_views.py b/src/user_views.py similarity index 100% rename from user_views.py rename to src/user_views.py