Таймаут AWS AppRunner в образе Docker с использованием Django / Gunicorn

Мне нужна помощь с развертыванием образа Docker (из ECR), где я использую Django и Gunicorn. Gunicorn всегда оставляет лог "Critical - Timeout" и, видимо, код никогда не выполняется. Я уже проверил, что сеть не имеет проблем с исходящими и входящими соединениями (использую образ Netcat). Мой Dockerfile содержит следующее:

# Use the official Python image
# https://hub.docker.com/_/python
FROM python:3.7-slim

# Needed to capture stderr output
# https://github.com/bottlepy/bottle/issues/1130#issuecomment-478096704
# https://stackoverflow.com/a/59812588/109102
ENV PYTHONUNBUFFERED=1

# Set the working directory in the container
WORKDIR /app

# Intall system level dependencies
RUN apt-get update && apt-get install -y \
git \
g++ \
gcc \
gettext \
libxmlsec1-dev \
libxmlsec1-openssl \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/\*

# Copy the dependencies file to the working directory
COPY requirements.txt .

# Install dependencies
RUN pip install --no-cache-dir -r requirements.txt

# Copy the content of the local src directory to the working directory
COPY . .

# Expose port 8000 to the outside world
EXPOSE 8000

CMD ["gunicorn", "MyProject.wsgi:application", "--bind", "0.0.0.0:8000", "--workers", "3", "--timeout", "120", "--log-level", "debug"]

Проверка работоспособности проходит успешно, когда она настроена как TCP, но когда я настраиваю ее как HTTP, она терпит неудачу, поскольку возвращает таймаут.

Кроме того, когда я запускаю образ на своем локальном компьютере (Mac), у меня не возникает никаких проблем.

Любые рекомендации будут очень полезны :)

Вернуться на верх