Switch to Python 3.8 for Essentia compatibility

Essentia pre-built wheels are only available up to Python 3.8 (cp38)
Using essentia-2.1b6.dev218 for x86_64

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-12-02 23:33:21 +01:00
parent 92d1024195
commit d5fda46eed

View File

@@ -1,4 +1,4 @@
FROM python:3.11-slim
FROM python:3.8-slim
# Install system dependencies
RUN apt-get update && apt-get install -y \
@@ -27,20 +27,15 @@ COPY requirements.txt .
RUN pip install --no-cache-dir numpy==1.24.3
RUN pip install --no-cache-dir scipy==1.11.4
# Install Essentia - detect architecture and install appropriate wheel
# Install Essentia - Python 3.8 version (latest available with pre-built wheels)
RUN ARCH=$(uname -m) && \
if [ "$ARCH" = "x86_64" ]; then \
echo "Installing Essentia for x86_64..." && \
echo "Installing Essentia for x86_64 Python 3.8..." && \
pip install --no-cache-dir --trusted-host essentia.upf.edu \
https://essentia.upf.edu/python-wheels/essentia-2.1_beta6.dev374-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl || \
echo "Essentia installation failed, using fallback mode"; \
elif [ "$ARCH" = "aarch64" ]; then \
echo "Installing Essentia for aarch64..." && \
pip install --no-cache-dir --trusted-host essentia.upf.edu \
https://essentia.upf.edu/python-wheels/essentia-2.1_beta6.dev374-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl || \
https://essentia.upf.edu/python-wheels/essentia-2.1b6.dev218-cp38-cp38-manylinux1_x86_64.whl || \
echo "Essentia installation failed, using fallback mode"; \
else \
echo "Unsupported architecture: $ARCH, using fallback mode"; \
echo "Essentia wheels only available for x86_64, using fallback mode"; \
fi
RUN pip install --no-cache-dir -r requirements.txt