From ff722f72bfdd66d4f80989ebb5a930e9e0d47891 Mon Sep 17 00:00:00 2001 From: Hubert Dwornik Date: Sun, 12 May 2024 17:13:15 +0200 Subject: [PATCH] =?UTF-8?q?jeszcze=20niedzia=C5=82aj=C4=85ca=20konteneryza?= =?UTF-8?q?cja=20dockera?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +++ Dockerfile | 14 +++++++++++ README.md | 25 +++++++++++++++++++ ai_front_connector/Dockerfile | 1 - ai_front_connector/README.md | 21 ---------------- ai_front_connector/mock_db/db.json | 1 - .../Include}/frontend_AI_connector.py | 4 +-- .../Include}/init_scripts/constants.ini | 4 +-- .../Include}/init_scripts/movies.csv | 0 .../Include}/requirements.txt | 0 .../init_scripts => database}/init.sql | 0 .../docker-compose.yml => docker-compose.yml | 13 +++++++++- 12 files changed, 58 insertions(+), 28 deletions(-) create mode 100644 .gitignore create mode 100644 Dockerfile delete mode 100644 ai_front_connector/Dockerfile delete mode 100644 ai_front_connector/README.md delete mode 100644 ai_front_connector/mock_db/db.json rename {ai_front_connector => connector/Include}/frontend_AI_connector.py (96%) rename {ai_front_connector => connector/Include}/init_scripts/constants.ini (51%) rename {ai_front_connector => connector/Include}/init_scripts/movies.csv (100%) rename {ai_front_connector => connector/Include}/requirements.txt (100%) rename {ai_front_connector/init_scripts => database}/init.sql (100%) rename ai_front_connector/docker-compose.yml => docker-compose.yml (64%) diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..535289b5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +connector/Lib/* +connector/Scripts/* +pyvenv.cfg \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..873fdaf0 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM python:3.11-bullseye + +WORKDIR /code + +COPY ./connector/Include/*.* . +COPY ./connector/Include/init_scripts/*.* ./init_scripts/*.* + +ENV PIP_DISABLE_PIP_VERSION_CHECK 1 +ENV PYTHONDONTWRITEBYTECODE 1 +ENV PYTHONUNBUFFERED 1 + +RUN pip install -r requirements.txt + +COPY . . \ No newline at end of file diff --git a/README.md b/README.md index 034d04f1..b88556b9 100644 --- a/README.md +++ b/README.md @@ -1 +1,26 @@ # Projekt z ERSMS + + +## Backend + +### instalacja: +pip install -r requirements.txt + +### budowanie i uruchamianie obrazu z bazą danych: +docker compose up (ewentualnie można też z GUI) + +### uruchomienie: +(Z directory macierzystego) +python3 ai_front_connector/frontend_AI_connector.py + +### gadanie z endpointami + +GET http://localhost:8090/ - testowy domowy + +GET http://localhost:8090//api/v3/get/ - info o userach + +GET http://localhost:8090//api/v3/get_movie/ - info o filmie + +POST http://localhost:8090/api/v3/add// - dodawanie usera + +GET http://localhost:8090/api/v3/ai/ - wyciąganie rekomendacji od AI \ No newline at end of file diff --git a/ai_front_connector/Dockerfile b/ai_front_connector/Dockerfile deleted file mode 100644 index 6002bff0..00000000 --- a/ai_front_connector/Dockerfile +++ /dev/null @@ -1 +0,0 @@ -FROM python:3.10.4-slim-bullseye \ No newline at end of file diff --git a/ai_front_connector/README.md b/ai_front_connector/README.md deleted file mode 100644 index 16214b45..00000000 --- a/ai_front_connector/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# instalacja: -pip install -r requirements.txt - -# budowanie i uruchamianie obrazu z bazą danych: -cd ai_front_connector -docker compose up (ewentualnie można też z GUI) - -# uruchomienie: -(Z directory macierzystego) -python3 ai_front_connector/frontend_AI_connector.py - -# gadanie z endpointami - -GET http://localhost:8080/ - testowy domowy - -GET http://localhost:8080//api/v3/get/ - info o userach - -POST http://localhost:8080/api/v3/add// - dodawanie usera - -GET http://localhost:8080/api/v3/ai/ - wyciąganie rekomendacji od AI - diff --git a/ai_front_connector/mock_db/db.json b/ai_front_connector/mock_db/db.json deleted file mode 100644 index 8201b8ef..00000000 --- a/ai_front_connector/mock_db/db.json +++ /dev/null @@ -1 +0,0 @@ -{"_default": {"1": {"ID": "123123", "username": "ziom69"}, "2": {"ID": "123123", "username": "ziom66"}}} \ No newline at end of file diff --git a/ai_front_connector/frontend_AI_connector.py b/connector/Include/frontend_AI_connector.py similarity index 96% rename from ai_front_connector/frontend_AI_connector.py rename to connector/Include/frontend_AI_connector.py index 9e8e57a9..7dcfcf35 100644 --- a/ai_front_connector/frontend_AI_connector.py +++ b/connector/Include/frontend_AI_connector.py @@ -67,7 +67,7 @@ def get_movie(movie_ID): if __name__ == "__main__": config = ConfigParser() - config.read("ai_front_connector/init_scripts/constants.ini") + config.read("init_scripts/constants.ini") conn = psycopg2.connect( host=config["postgres"]["host"], @@ -79,6 +79,6 @@ if __name__ == "__main__": movie_list = pandas.read_csv(config["movie"]["csv_path"]) - app.run(port=8080, debug=True) + app.run(host="0.0.0.0",port=8090, debug=True) conn.close() diff --git a/ai_front_connector/init_scripts/constants.ini b/connector/Include/init_scripts/constants.ini similarity index 51% rename from ai_front_connector/init_scripts/constants.ini rename to connector/Include/init_scripts/constants.ini index a0c99581..e922b009 100644 --- a/ai_front_connector/init_scripts/constants.ini +++ b/connector/Include/init_scripts/constants.ini @@ -1,9 +1,9 @@ [postgres] -host=localhost +host=db database=test_db user=root password=root port=5432 [movie] -csv_path=ai_front_connector/init_scripts/movies.csv +csv_path=init_scripts/movies.csv diff --git a/ai_front_connector/init_scripts/movies.csv b/connector/Include/init_scripts/movies.csv similarity index 100% rename from ai_front_connector/init_scripts/movies.csv rename to connector/Include/init_scripts/movies.csv diff --git a/ai_front_connector/requirements.txt b/connector/Include/requirements.txt similarity index 100% rename from ai_front_connector/requirements.txt rename to connector/Include/requirements.txt diff --git a/ai_front_connector/init_scripts/init.sql b/database/init.sql similarity index 100% rename from ai_front_connector/init_scripts/init.sql rename to database/init.sql diff --git a/ai_front_connector/docker-compose.yml b/docker-compose.yml similarity index 64% rename from ai_front_connector/docker-compose.yml rename to docker-compose.yml index b8234ac6..c8b096a8 100644 --- a/ai_front_connector/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,17 @@ version: "3.8" services: + connector: + container_name: connector_container + build: . + volumes: + - .:/code + ports: + - 8090:8090 + depends_on: + - db + command: + - python3 ./frontend_AI_connector.py db: container_name: db_container image: postgres:13 @@ -11,7 +22,7 @@ services: ports: - 5432:5432 volumes: - - ./init_scripts/init.sql:/docker-entrypoint-initdb.d/init.sql + - ./database/init.sql:/docker-entrypoint-initdb.d/init.sql - postgres_data:/var/lib/postgresql/data/ pgadmin: container_name: admin_container