# Lyrica (https://github.com/Wilooper/Lyrica, MIT): a lyrics service that tries several sources and returns plain, line-synced and word-synced lyrics. # Pinned to one commit so what runs is what was tested; change LYRICA_REF to update. FROM python:3.11-slim ARG LYRICA_REF=2c77f81752f3e1ae9a1adbd7b68f633d60b2de23 ENV PYTHONUNBUFFERED=1 PORT=9999 WORKDIR /app RUN apt-get update && apt-get install -y --no-install-recommends build-essential gcc git libxml2-dev libxslt1-dev libffi-dev libssl-dev curl ca-certificates \ && rm -rf /var/lib/apt/lists/* \ && curl -fsSL "https://github.com/Wilooper/Lyrica/archive/${LYRICA_REF}.tar.gz" | tar xz --strip-components=1 -C /app \ && pip install --no-cache-dir --upgrade pip && pip install --no-cache-dir -r requirements.txt \ && useradd -m lyrica && chown -R lyrica /app USER lyrica EXPOSE 9999 CMD ["gunicorn", "-c", "gunicorn.config.py", "run:app"]