Compare commits

...

2 Commits

Author SHA1 Message Date
2bd081fe7a add: action
Some checks failed
Build and Deploy / build (push) Has been cancelled
2025-07-21 00:09:53 +05:00
e59669f66a add: dockerfile 2025-07-20 23:24:00 +05:00
6 changed files with 94 additions and 1 deletions

View File

@ -0,0 +1,41 @@
name: Build and Deploy
on:
push:
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Gitea Container Registry
uses: docker/login-action@v2
with:
registry: git.popa-popa.ru
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
context: .
push: true
tags: git.popa-popa.ru/DIKER/minecraft-api:latest # Замените username на ваше имя пользователя
- name: Deploy to server
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
script: |
cd /home/server/minecraft-api/
docker pull git.popa-popa.ru/DIKER/minecraft-api:latest
docker-compose up -d

1
.gitignore vendored
View File

@ -3,3 +3,4 @@ __pycache__
.env
skins
capes
mongodb

View File

@ -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"]

29
docker-compose.yml Normal file
View File

@ -0,0 +1,29 @@
services:
app:
container_name: minecraft-api
build:
context: .
dockerfile: Dockerfile
ports:
- "3001: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

16
dockerfile Normal file
View File

@ -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"]

View File

@ -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