FastAPIプロジェクトをDocker化を試みたが、uvicornコマンドを実行できない

前提

FastAPIでAPIを作成しており、作成したプロジェクトをDocker化しようとしています。
パッケージ管理はpoetryを仕様しています。

ディレクトリ構成

. ├ .venv/ ├ app/ │ └ main.app └ tests/ ├ .dockerignore ├ .gitignore ├ docker-compose.yml ├ Dockerfile ├ poetry.lock ├ pyproject.toml └ README.md

Dockerfile

Dockerfile

FROM python:3.8-slim as builder WORKDIR /usr/src RUN pip install poetry COPY pyproject.toml poetry.lock ./ RUN poetry export -f requirements.txt -o requirements.txt FROM python:3.8-slim ENV PYTHONUNBUFFERED=1 WORKDIR /usr/src/ COPY --from=builder /usr/src/requirements.txt . RUN pip install -r requirements.txt COPY . . EXPOSE 8080 CMD ["uvicorn", "app.main:app", "--reload", "--host", "0.0.0.0", "--port", "8080"]

docker-compose.yml

version: "3" services: app: build: . volumes: - ./:/usr/app ports: - "8080:8080"

pyproject.toml

[tool.poetry] name = "prime-video-api" version = "0.1.0" description = "" authors = ["yuu <yusei8171@gmail.com>"] readme = "README.md" packages = [{include = "prime_video_api"}] [tool.poetry.dependencies] python = "^3.9" fastapi = "^0.85.0" uvicorn = "^0.18.3" selenium = "^4.4.3" chromedriver-binary-auto = "^0.2.0" bs4 = "^0.0.1" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api"

発生している問題・エラーメッセージ

docker-compose up -d を実行し、コンテナの起動を試みたのですが、以下のエラーが発生しました。

Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "uvicorn": executable file not found in $PATH: unknown

参考記事

https://qiita.com/Aruneko/items/43efd6d7aa8eccc2b77e

コメントを投稿

0 コメント