Python [Errno 8] Exe c Ошибка формата: '/app/.venv/bin/python' - PullRequest
0 голосов
/ 14 марта 2020

У меня ошибка при создании Docker изображения. У меня не было этой ошибки до нескольких дней go, и я действительно не помню, чтобы менялся Dockerfile, поэтому я не знаю, что случилось. Кроме того, я использую Poetry, выполняя в Dockerfile следующие команды (следующие за этим Интеграция Python Поэзия с Docker post):

source $HOME/.poetry/env && poetry export -f requirements.txt | /venv/bin/pip install -r /dev/stdin

source $HOME/.poetry/env && poetry build && /venv/bin/pip install dist/*.whl

Я пытался повторить те же шаги вручную в Docker контейнере, и я столкнулся с той же ошибкой.

Всякий раз, когда я запускаю «Стихотворение» или «Стихотворение», я получаю эту ошибку:

[OSError]
[Errno 8] Exec format error: '/app/.venv/bin/python'

Я надеваю Я действительно не знаю, на что смотреть, поэтому я даже не знаю, какой информацией поделиться с вами здесь. Дайте мне знать.

Спасибо

Dockerfile (я обрезал его по строке, вызывающей cra * sh):

FROM python:3.7.4-slim-stretch AS builder

RUN apt-get update -qq && \
  apt-get install -y --no-install-recommends \
  build-essential \
  curl \
  git

ARG MY_ENV
ARG DOCKER_HOST

ENV MY_ENV=${MY_ENV} \
  PYTHONFAULTHANDLER=1 \
  PYTHONUNBUFFERED=1 \
  PYTHONHASHSEED=random \
  PIP_NO_CACHE_DIR=on \
  PIP_DISABLE_PIP_VERSION_CHECK=on \
  PIP_DEFAULT_TIMEOUT=100 \
  POETRY_VERSION=1.0.0

RUN curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python /dev/stdin --version $POETRY_VERSION
RUN python -m venv /venv
RUN mkdir app
WORKDIR ./app
COPY pyproject.toml poetry.lock ./
RUN /bin/bash -c "source $HOME/.poetry/env && poetry export -f requirements.txt | /venv/bin/pip install -r /dev/stdin"
COPY . .
RUN /bin/bash -c "source $HOME/.poetry/env && poetry build && /venv/bin/pip install dist/*.whl"

pyproject.toml

[tool.poetry]
name = "cuppa-seeder"
version = "0.1.0"
description = "Python backend for the census app"
authors = ["xxxx <xxxo@xxx.xxx>"]

[tool.poetry.dependencies]
python = "~3.7.4"
requests = "^2.23.0"
psycopg2-binary = "^2.8.4"

[tool.poetry.dev-dependencies]

[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...