| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- FROM python:3.12-slim-bookworm AS stage-1
- ARG TARGETARCH
- ARG HUGGINGFACE_MODEL=fish-speech-1.4
- ARG HF_ENDPOINT=https://huggingface.co
- WORKDIR /opt/fish-speech
- RUN set -ex \
- && pip install huggingface_hub \
- && HF_ENDPOINT=${HF_ENDPOINT} huggingface-cli download --resume-download fishaudio/${HUGGINGFACE_MODEL} --local-dir checkpoints/${HUGGINGFACE_MODEL}
- FROM python:3.12-slim-bookworm
- ARG TARGETARCH
- ARG DEPENDENCIES=" \
- ca-certificates \
- libsox-dev \
- build-essential \
- cmake \
- libasound-dev \
- portaudio19-dev \
- libportaudio2 \
- libportaudiocpp0 \
- ffmpeg"
- RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
- --mount=type=cache,target=/var/lib/apt,sharing=locked \
- set -ex \
- && rm -f /etc/apt/apt.conf.d/docker-clean \
- && echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' >/etc/apt/apt.conf.d/keep-cache \
- && apt-get update \
- && apt-get -y install --no-install-recommends ${DEPENDENCIES} \
- && echo "no" | dpkg-reconfigure dash
- WORKDIR /opt/fish-speech
- COPY . .
- RUN --mount=type=cache,target=/root/.cache,sharing=locked \
- set -ex \
- && pip install -e .[stable]
- COPY --from=stage-1 /opt/fish-speech/checkpoints /opt/fish-speech/checkpoints
- ENV GRADIO_SERVER_NAME="0.0.0.0"
- EXPOSE 7860
- CMD ["./entrypoint.sh"]
|