FROM ubuntu:24.04 # acestep.cpp builds from source with cmake. CPU-only path (matches # buildcpu.sh: cmake -DGGML_BLAS=ON). No CUDA/Vulkan/Metal. # pkg-config is REQUIRED: ggml-blas/CMakeLists.txt calls find_package(PkgConfig) # and fails the configure step without it (build died here on the first attempt). RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ git cmake build-essential ca-certificates curl python3 \ pkg-config \ libblas-dev liblapack-dev libgomp1 libcurl4 \ && rm -rf /var/lib/apt/lists/* WORKDIR /build # clone source + ggml submodule RUN git clone --depth 1 --recurse-submodules \ https://github.com/ServeurpersoCom/acestep.cpp.git . \ && rm -rf build && mkdir build && cd build \ && cmake .. -DGGML_BLAS=ON -DCMAKE_BUILD_TYPE=Release \ && cmake --build . --config Release -j "$(getconf _NPROCESSORS_ONLN)" # weights: 0.6B LM + Q8_0 DiT turbo + Q8_0 text encoder + BF16 VAE (~4.2 GB total) RUN mkdir -p /app/models \ && curl -fL -o /app/models/acestep-5Hz-lm-0.6B-Q8_0.gguf \ https://huggingface.co/Serveurperso/ACE-Step-1.5-GGUF/resolve/main/acestep-5Hz-lm-0.6B-Q8_0.gguf \ && curl -fL -o /app/models/acestep-v15-turbo-Q8_0.gguf \ https://huggingface.co/Serveurperso/ACE-Step-1.5-GGUF/resolve/main/acestep-v15-turbo-Q8_0.gguf \ && curl -fL -o /app/models/Qwen3-Embedding-0.6B-Q8_0.gguf \ https://huggingface.co/Serveurperso/ACE-Step-1.5-GGUF/resolve/main/Qwen3-Embedding-0.6B-Q8_0.gguf \ && curl -fL -o /app/models/vae-BF16.gguf \ https://huggingface.co/Serveurperso/ACE-Step-1.5-GGUF/resolve/main/vae-BF16.gguf WORKDIR /app COPY run.sh /app/run.sh RUN chmod +x /app/run.sh EXPOSE 7860 CMD ["bash", "/app/run.sh"]