aileen3-core / Dockerfile
ndurner's picture
HF DevMode requires git
926b2a6
raw
history blame
1.49 kB
FROM python:3.11-slim
ENV PYTHONUNBUFFERED=1 \
PIP_NO_CACHE_DIR=1 \
DENO_NO_UPDATE_CHECK=1 \
DEBIAN_FRONTEND=noninteractive
ARG DENO_VERSION=2.0.0
WORKDIR /app
RUN apt-get update && \
apt-get install -y --no-install-recommends curl unzip ca-certificates ffmpeg git && \
arch="$(uname -m)" && \
case "$arch" in \
x86_64) deno_arch="x86_64-unknown-linux-gnu" ;; \
aarch64|arm64) deno_arch="aarch64-unknown-linux-gnu" ;; \
*) echo "Unsupported architecture for Deno: $arch" >&2; exit 1 ;; \
esac && \
curl -fsSL "https://github.com/denoland/deno/releases/download/v${DENO_VERSION}/deno-${deno_arch}.zip" -o /tmp/deno.zip && \
unzip -q /tmp/deno.zip -d /tmp && \
mv /tmp/deno /usr/local/bin/deno && \
chmod +x /usr/local/bin/deno && \
rm -rf /tmp/deno.zip && \
rm -rf /var/lib/apt/lists/*
# populate cache; this works around HuggingFace egress restrictions
RUN curl -fsSL "https://ndurner.de/download/aileen3/aileen3-cache.zip" -o /tmp/aileen3-cache.zip && \
unzip -q /tmp/aileen3-cache.zip -d /tmp && \
mkdir -p /root/.cache && \
mv /tmp/aileen3-cache /root/.cache/aileen3 && \
rm -rf /tmp/aileen3-cache.zip
COPY demo/requirements.txt demo/requirements.txt
COPY mcp mcp
RUN pip install --upgrade pip && \
pip install -r demo/requirements.txt && \
pip install -e ./mcp
COPY demo demo
EXPOSE 7860
ENV GRADIO_SERVER_PORT=7860 \
GRADIO_SERVER_NAME=0.0.0.0
CMD ["python", "demo/app.py"]