|
1 | 1 | name: Docker Build |
2 | 2 |
|
3 | 3 | on: |
4 | | - push: |
5 | | - branches: |
6 | | - - main |
7 | | - paths: |
8 | | - - 'Dockerfile' |
9 | | - |
10 | | -env: |
11 | | - REGISTRY: ${{ secrets.DOCKERHUB_USERNAME }} |
12 | | - IMAGE_NAME: ${{ secrets.DOCKERHUB_REPO }} |
13 | | - BLENDER_MIRROR_URL: ${{ secrets.BLENDER_MIRROR_URL }} |
| 4 | + workflow_dispatch: |
14 | 5 |
|
15 | 6 | jobs: |
16 | 7 | build-and-push: |
17 | 8 | runs-on: ubuntu-latest |
18 | | - strategy: |
19 | | - matrix: |
20 | | - blender_version: |
21 | | - - { version: "3.4.1", short: "3.4" } |
22 | | - - { version: "3.5.1", short: "3.5" } |
23 | | - - { version: "3.6.18", short: "3.6" } |
24 | | - - { version: "4.0.2", short: "4.0" } |
25 | | - - { version: "4.1.1", short: "4.1" } |
26 | | - - { version: "4.2.4", short: "4.2" } |
27 | | - - { version: "4.3.0", short: "4.3" } |
28 | | - ubuntu_cuda_version: |
29 | | - - { version: "11.7.1-cudnn8-devel-ubuntu20.04", short: "cuda11.7.1-ubuntu20.04" } |
30 | | - - { version: "11.7.1-cudnn8-devel-ubuntu22.04", short: "cuda11.7.1-ubuntu22.04" } |
31 | | - - { version: "11.8.0-cudnn8-devel-ubuntu20.04", short: "cuda11.8.0-ubuntu20.04" } |
32 | | - - { version: "11.8.0-cudnn8-devel-ubuntu22.04", short: "cuda11.8.0-ubuntu22.04" } |
33 | | - - { version: "12.1.1-cudnn8-devel-ubuntu20.04", short: "cuda12.1.1-ubuntu20.04" } |
34 | | - - { version: "12.1.1-cudnn8-devel-ubuntu22.04", short: "cuda12.1.1-ubuntu22.04" } |
35 | | - - { version: "12.4.1-cudnn-devel-ubuntu20.04", short: "cuda12.4.1-ubuntu20.04" } |
36 | | - - { version: "12.4.1-cudnn-devel-ubuntu22.04", short: "cuda12.4.1-ubuntu22.04" } |
37 | | - - { version: "12.6.3-cudnn-devel-ubuntu20.04", short: "cuda12.6.3-ubuntu20.04" } |
38 | | - - { version: "12.6.3-cudnn-devel-ubuntu22.04", short: "cuda12.6.3-ubuntu22.04" } |
39 | | - - { version: "12.6.3-cudnn-devel-ubuntu24.04", short: "cuda12.6.3-ubuntu24.04" } |
40 | | - |
41 | 9 | steps: |
42 | 10 | # Checkout the repository |
43 | 11 | - name: Checkout repository |
|
55 | 23 | username: ${{ secrets.DOCKERHUB_USERNAME }} |
56 | 24 | password: ${{ secrets.DOCKERHUB_TOKEN }} |
57 | 25 |
|
58 | | - # Cache Docker layers |
59 | | - - name: Cache Docker layers |
60 | | - uses: actions/cache@v3 |
61 | | - with: |
62 | | - path: /tmp/.buildx-cache |
63 | | - key: ${{ runner.os }}-docker-${{ hashFiles('**/Dockerfile') }} |
64 | | - restore-keys: | |
65 | | - ${{ runner.os }}-docker- |
66 | | -
|
67 | | - # Extract metadata for Docker |
68 | | - - name: Extract metadata for Docker |
69 | | - id: meta |
70 | | - uses: docker/metadata-action@v5 |
71 | | - with: |
72 | | - images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} |
73 | | - tags: | |
74 | | - type=ref,event=branch |
75 | | - type=ref,event=pr |
76 | | - type=semver,pattern={{version}} |
77 | | - type=semver,pattern={{major}}.{{minor}} |
78 | | -
|
79 | 26 | # Build and push Docker image |
80 | 27 | - name: Build and push Docker image |
81 | 28 | uses: docker/build-push-action@v5 |
|
84 | 31 | push: true |
85 | 32 | provenance: false # Disable provenance if unsupported |
86 | 33 | tags: | |
87 | | - ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:blender-${{ matrix.blender_version.short }}-${{ matrix.ubuntu_cuda_version.short }} |
| 34 | + ${{ env.REGISTRY }}/kigland/blender:4.5.3-cuda12.8.1 |
88 | 35 | build-args: | |
89 | | - BLENDER_VERSION=${{ matrix.blender_version.version }} |
90 | | - UBUNTU_CUDA_VERSION=${{ matrix.ubuntu_cuda_version.version }} |
91 | | - BLENDER_MIRROR_URL=${{ env.BLENDER_MIRROR_URL }} |
| 36 | + BLENDER_VERSION=4.5.3 |
| 37 | + UBUNTU_CUDA_VERSION=12.8.1-cudnn-devel-ubuntu24.04 |
92 | 38 | cache-from: type=gha,scope=build-cache |
93 | 39 | cache-to: type=gha,mode=max,scope=build-cache |
0 commit comments