FROM python:3.14-slim-trixie VOLUME /home COPY video_to_gif.py pyproject.toml uv.lock .python-version /home/ WORKDIR /home # https://stackoverflow.com/a/52445962 RUN apt update -y && \ apt upgrade -y && \ apt install ffmpeg -y && \ apt install curl -y && \ apt install build-essential -y RUN pip install --upgrade pip && \ pip install uv && \ uv sync --frozen --no-dev # https://stackoverflow.com/a/49676568 RUN curl https://sh.rustup.rs -sSf | bash -s -- -y ENV PATH="/root/.cargo/bin:${PATH}" # https://crates.io/crates/gifski RUN cargo install gifski ENTRYPOINT ["uv", "run", "python", "video_to_gif.py"]