Ответ об ошибке от демона: не удалось создать задачу для контейнера: не удалось для создания задачи оболочки: Ошибка создания среды выполнения OCI: Ошибка создания runc: невозможно запустить процесс контейнера: exec: "fastapi": исполняемый файл не найден в $PATH: неизвестно
Может кто-нибудь помочь мне?
Dockerfile
Код: Выделить всё
FROM python:3.12 as builder
# install and setup poetry config
RUN pip install poetry==1.8.2
ENV POETRY_NO_INTERACTION=1 \
POETRY_VIRTUALENVS_IN_PROJECT=1 \
POETRY_VIRTUALENVS_CREATE=1 \
POETRY_CACHE_DIR=/tmp/poetry_cache
WORKDIR /navigation
COPY pyproject.toml poetry.lock ./
# poetry complains if there is no README file
RUN touch README.md
# install without dev dependencies + remove poetry cache
RUN poetry install --without dev && rm -rf $POETRY_CACHE_DIR
FROM python:3.12-alpine as runtime
ENV VIRTUAL_ENV=/navigation/.venv \
PATH="/navigation/.venv/bin:$PATH"
COPY --from=builder ${VIRTUAL_ENV} ${VIRTUAL_ENV}
COPY navigation ./navigation
CMD ["fastapi", "run", "main.py", "--proxy-headers", "--port", "80"]
Код: Выделить всё
services:
navigation-api:
build:
context: .
dockerfile: Dockerfile
volumes:
- ./navigation:/navigation
pyproject.toml
Код: Выделить всё
[tool.poetry.dependencies]
python = ">=3.12,
Подробнее здесь: [url]https://stackoverflow.com/questions/78564217/starting-container-process-caused-exec-fastapi-executable-file-not-found-in[/url]