/
aastray
/
StudentPart
Обзор
Документация
Войти
/
aastray
/
StudentPart
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Dockerfile
49 строк
2 KB
aastray
Реализован функционал загрузки файлов и просмотра документов, удалены базовые эндпоинты, обновлена документация
10 янв 2026, 15:38
10 янв 2026, 15:38
4d47c55
Код
Авторство
О чём код?
FROM python:3.12-slim # Установка системных зависимостей RUN apt-get update && \ apt-get install -y --no-install-recommends \ postgresql-client \ curl && \ rm -rf /var/lib/apt/lists/* # Установка Poetry RUN pip install --no-cache-dir poetry==1.8.2 # Настройка Poetry (не создавать виртуальное окружение в контейнере) ENV POETRY_NO_INTERACTION=1 \ POETRY_VIRTUALENVS_CREATE=false \ POETRY_CACHE_DIR=/tmp/poetry_cache WORKDIR /app # Копируем файлы зависимостей COPY service/pyproject.toml service/poetry.lock* ./service/ COPY API-lib/pyproject.toml API-lib/poetry.lock* ./API-lib/ # Устанавливаем зависимости (сначала service, так как он основной) RUN cd service && poetry install --no-root --only main && rm -rf $POETRY_CACHE_DIR # Копируем весь проект COPY . . # Устанавливаем пакеты в editable режиме RUN cd service && poetry install --only-root RUN cd API-lib && poetry install --only-root # Копируем скрипты и даем права на выполнение COPY service/ConfigFiles/wait_db.sh /app/wait_db.sh RUN sed -i 's/\r$//' /app/wait_db.sh && \ chmod +x /app/wait_db.sh # Настройка PYTHONPATH для корректной работы импортов ENV PYTHONPATH=/app/service:/app/API-lib:$PYTHONPATH EXPOSE 8000 HEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 \ CMD curl -f http://localhost:8000/health || exit 1 # Запуск приложения из директории service WORKDIR /app/service CMD ["uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8000"]