# Use an official Python runtime as a parent image FROM python:3.11-slim-buster as base # Set work directory in the container WORKDIR /app # Install system dependencies RUN apt-get update \ && apt-get install -y build-essential curl ffmpeg \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # Install Poetry - respects $POETRY_VERSION & $POETRY_HOME ENV POETRY_VERSION=1.1.8 \ POETRY_HOME="/opt/poetry" \ POETRY_NO_INTERACTION=1 \ POETRY_VIRTUALENVS_CREATE=false \ PATH="$POETRY_HOME/bin:$PATH" RUN pip3 install poetry COPY pyproject.toml poetry.lock* /app/ # Project initialization: RUN poetry install --no-interaction --no-ansi ENV PYTHONPATH="/app:$PYTHONPATH" FROM base as dependencies # Copy project COPY . /app # Make port 80 available to the world outside this container EXPOSE 8000 # Run the application when the container launches CMD ["poetry", "run", "python", "autogpt/__main__.py"]