From e59669f66ac1f0b496a0747991c239e7bc91a396 Mon Sep 17 00:00:00 2001 From: DIKER0K Date: Sun, 20 Jul 2025 23:24:00 +0500 Subject: [PATCH] add: dockerfile --- .gitignore | 1 + app/db/database.py | 2 +- docker-compose.yml | 29 +++++++++++++++++++++++++++++ dockerfile | 16 ++++++++++++++++ requirements.txt | 6 ++++++ 5 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 docker-compose.yml create mode 100644 dockerfile diff --git a/.gitignore b/.gitignore index 1ea8bbd..1920348 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ __pycache__ .env skins capes +mongodb diff --git a/app/db/database.py b/app/db/database.py index 6034d40..eb0ad8e 100644 --- a/app/db/database.py +++ b/app/db/database.py @@ -2,7 +2,7 @@ from motor.motor_asyncio import AsyncIOMotorClient from app.core.config import MONGO_URI client = AsyncIOMotorClient(MONGO_URI) -db = client["minecraft_auth"] +db = client["minecraft-api"] users_collection = db["users"] sessions_collection = db["sessions"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..db567f0 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,29 @@ +services: + app: + container_name: minecraft-api + build: + context: . + dockerfile: Dockerfile + ports: + - "3000:3000" + volumes: + - ./app/static:/app/static + environment: + - MONGO_URI=mongodb://mongodb:27017/minecraft-api + - SECRET_KEY=your-secret-key + - ALGORITHM=HS256 + - ACCESS_TOKEN_EXPIRE_MINUTES=30 + depends_on: + - mongodb + + mongodb: + container_name: mongodb + image: mongo:latest + ports: + - "27017:27017" + volumes: + - ./mongodb:/data/db + environment: + - MONGO_INITDB_ROOT_USERNAME=popa + - MONGO_INITDB_ROOT_PASSWORD=2006sit_ + restart: always diff --git a/dockerfile b/dockerfile new file mode 100644 index 0000000..dbde8d5 --- /dev/null +++ b/dockerfile @@ -0,0 +1,16 @@ +FROM python:3.10-slim + +WORKDIR /app + +COPY requirements.txt . + +RUN pip install -r requirements.txt + +COPY . . + +VOLUME /app/static + +EXPOSE 3000 + +CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "3000"] + \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index b2e96fc..f70d9a0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,3 +5,9 @@ python-jose>=3.3.0 passlib>=1.7.4 bcrypt>=4.0.1 python-multipart>=0.0.9 +mongoengine>=0.24.2 +python-dotenv>=1.0.0 +pydantic>=2.0.0 +pydantic[email]>=2.0.0 +cryptography>=43.0.0 +