её правильно запускать? Что-то мне подсказывает, что не через полный путь src/app/main.py
Обозначить WORKDIR скопировать файлы в нее, и просто через main запускать
Ну, собственно, так оно и есть сейчас, но ведь неправильно запускать из src в editable режиме? При использовании asgi серверов, например, передаётся что-то вроде app:main, я вот предполагаю, что должно быть примерно то же самое
А, в этом вопрос. Ну да, через сервер запускаем
Нет, у меня нет сервера, у меня самописный воркер :) Вопрос в запуске любой сбилденной аппки
В чем вопрос? Делаем workdir /app copy . . И обращаемся к файлам в контейнере через относительный путь. Ну и в конце с эндпоинтом тоже самое, там как надо вызывать как будете файл запуска под ногами
Что я делаю: копирую корень проекта, запускаю pdm build и потом pip install из полученного .whl устанавливаю аппку, дальше стоит вопрос в расово верном запуске — с src/… стартует, но я не уверен, что так правильно
В whl нужен ендпоинт
Чтобы было типо myapp run —anyarg
И кстати зачем билдить колесо в докерфайле и там же его ставить, если ты его не пушишь? Уже не Билди а просто копируй и запускай из сурсов
Чисто вопрос зависимостей, потому что они из пакетного менеджера берутся
Если тебе не нужно распространять код через, зачем колесо вообще, просто установи через pip в образе свои зависимости, копируй сурс и запускаю код, без whl
Я же тебе давал пример докерфайла нет?
Нет, не через полный путь. Или python -m app.module, или при помощи console_scripts получишь сгенерированные скрипты при установке
Докерфайла не видел
https://gist.github.com/cutwater/91eca07eab6cd824cfdd60f462ea9fa8
А этот может и был :) Но тут gunicorn, а мне просто аппку запустить надо. Что сделал по итогу: - добавил в pyproject [project.scripts] app = "app:main" - перенёс код для запуска в src/app/_ _main_ _.py -запускаю теперь через python -m app
Ты ведь в курсе что project.scripts и python -m app это никак не связанные между собой вещи?
Обсуждают сегодня