diff --git a/.github/workflows/image.yml b/.github/workflows/image.yml index 38eed85a..baf18b42 100644 --- a/.github/workflows/image.yml +++ b/.github/workflows/image.yml @@ -22,18 +22,41 @@ jobs: platforms: 'linux/amd64,linux/arm64' tag-latest: 'auto' tag-suffix: '' + ffmpeg: '' - build-type: 'cublas' cuda-major-version: 11 cuda-minor-version: 7 platforms: 'linux/amd64' tag-latest: 'false' tag-suffix: '-cublas-cuda11' + ffmpeg: '' - build-type: 'cublas' cuda-major-version: 12 cuda-minor-version: 1 platforms: 'linux/amd64' tag-latest: 'false' tag-suffix: '-cublas-cuda12' + ffmpeg: '' + - build-type: '' + platforms: 'linux/amd64,linux/arm64' + tag-latest: 'auto' + tag-suffix: '' + ffmpeg: 'true' + - build-type: 'cublas' + cuda-major-version: 11 + cuda-minor-version: 7 + platforms: 'linux/amd64' + tag-latest: 'false' + tag-suffix: '-cublas-cuda11-ffmpeg' + ffmpeg: 'true' + - build-type: 'cublas' + cuda-major-version: 12 + cuda-minor-version: 1 + platforms: 'linux/amd64' + tag-latest: 'false' + tag-suffix: '-cublas-cuda12-ffmpeg' + ffmpeg: 'true' + runs-on: ubuntu-latest steps: - name: Checkout @@ -77,6 +100,7 @@ jobs: BUILD_TYPE=${{ matrix.build-type }} CUDA_MAJOR_VERSION=${{ matrix.cuda-major-version }} CUDA_MINOR_VERSION=${{ matrix.cuda-minor-version }} + FFMPEG=${{ matrix.ffmpeg }} context: . file: ./Dockerfile platforms: ${{ matrix.platforms }} diff --git a/Dockerfile b/Dockerfile index beee4ea1..d1a81dbb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -48,6 +48,7 @@ ARG BUILD_TYPE= ARG GO_TAGS=stablediffusion ARG CUDA_MAJOR_VERSION=11 ARG CUDA_MINOR_VERSION=7 +ARG FFMPEG= ENV BUILD_TYPE=${BUILD_TYPE} ENV GO_TAGS=${GO_TAGS} @@ -73,6 +74,12 @@ RUN if [ "${BUILD_TYPE}" = "cublas" ]; then \ apt-get update && \ apt-get install -y cuda-nvcc-${CUDA_MAJOR_VERSION}-${CUDA_MINOR_VERSION} libcublas-dev-${CUDA_MAJOR_VERSION}-${CUDA_MINOR_VERSION} \ ; fi + +# Add FFmpeg +RUN if [ "${FFMPEG}" = "true" ]; then \ + apt-get install -y ffmpeg \ + ; fi + ENV PATH /usr/local/cuda/bin:${PATH} # OpenBLAS requirements