From d30bd549c95176aa5e2422281eeac975fc5fb991 Mon Sep 17 00:00:00 2001 From: SantaSpeen Date: Thu, 27 Mar 2025 17:09:43 +0300 Subject: [PATCH] [+] docker --- src/auth/Dockerfile | 4 ++++ src/auth/readme.txt | 3 +++ src/docker-compose.yml | 47 +++++++++++++++++++++++++++++++++++++++++ src/example.env | 13 ++++++++++++ src/modpacks/Dockerfile | 4 ++++ src/modpacks/readme.txt | 6 ++++++ 6 files changed, 77 insertions(+) create mode 100644 src/auth/Dockerfile create mode 100644 src/auth/readme.txt create mode 100644 src/example.env create mode 100644 src/modpacks/Dockerfile create mode 100644 src/modpacks/readme.txt diff --git a/src/auth/Dockerfile b/src/auth/Dockerfile new file mode 100644 index 0000000..bd4aaeb --- /dev/null +++ b/src/auth/Dockerfile @@ -0,0 +1,4 @@ +FROM python:3.13.2-alpine +LABEL authors="SantaSpeen" + +ENTRYPOINT ["top", "-b"] \ No newline at end of file diff --git a/src/auth/readme.txt b/src/auth/readme.txt new file mode 100644 index 0000000..e244e65 --- /dev/null +++ b/src/auth/readme.txt @@ -0,0 +1,3 @@ +1. Авторизация и работа с аккаунтом пользователя +2. Управление ролями и т.п. +3. Выдача токена при успешной авторизации \ No newline at end of file diff --git a/src/docker-compose.yml b/src/docker-compose.yml index e69de29..1d5a56c 100644 --- a/src/docker-compose.yml +++ b/src/docker-compose.yml @@ -0,0 +1,47 @@ + +networks: + mml: + external: false + +services: + auth: + build: ./auth + container_name: mml-auth + restart: always + depends_on: + - database + environment: + - PORT=${AUTH_PORT} + - JWT_SECRET=${JWT_SECRET} + - DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@database:5432/${POSTGRES_DB} + networks: + - mml + ports: + - "${AUTH_PORT}:${AUTH_PORT}" + + modpacks: + build: ./modpacks + container_name: mml-modpacks + restart: always + environment: + - PORT=${MODPACKS_PORT} + - JWT_SECRET=${JWT_SECRET} + - DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@database:5432/${POSTGRES_DB} + depends_on: + - auth + - database + networks: + - mml + ports: + - "${MODPACKS_PORT}:${MODPACKS_PORT}" + + database: + image: postgres:16.8-alpine + restart: always + container_name: mml-database + environment: + - POSTGRES_USER=${POSTGRES_USER} + - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} + - POSTGRES_DB=${POSTGRES_DB} + networks: + - mml diff --git a/src/example.env b/src/example.env new file mode 100644 index 0000000..22ed233 --- /dev/null +++ b/src/example.env @@ -0,0 +1,13 @@ +# example.env +JWT_SECRET=secret + +# Auth +AUTH_PORT=3000 + +# Modpacks +MODPACKS_PORT=3001 + +# Database +POSTGRES_USER=postgres +POSTGRES_PASSWORD=postgres +POSTGRES_DB=postgres diff --git a/src/modpacks/Dockerfile b/src/modpacks/Dockerfile new file mode 100644 index 0000000..bd4aaeb --- /dev/null +++ b/src/modpacks/Dockerfile @@ -0,0 +1,4 @@ +FROM python:3.13.2-alpine +LABEL authors="SantaSpeen" + +ENTRYPOINT ["top", "-b"] \ No newline at end of file diff --git a/src/modpacks/readme.txt b/src/modpacks/readme.txt new file mode 100644 index 0000000..e290580 --- /dev/null +++ b/src/modpacks/readme.txt @@ -0,0 +1,6 @@ +1. Добавление/обновление/удаление модпаков. +2. Хранение информации о версиях модпаков. +3. Управление метаданными файлов (например, хеши). +4. Интеграция с S3 для загрузки/выгрузки файлов. +5. Получение информации о последней версии модпака (для получения данных о "latest"). +