Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: b-it-bots/docker
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: a2s-institute/docker-stacks
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Can’t automatically merge. Don’t worry, you can still create the pull request.
Loading
Showing with 1,720 additions and 729 deletions.
  1. +0 −147 .github/workflows/ci.yml
  2. +142 −0 .github/workflows/docker-build-test-upload.yml
  3. +195 −0 .github/workflows/docker.yml
  4. +39 −81 .github/workflows/manual-workflow.yml
  5. +59 −17 README.md
  6. +75 −0 base-gpu-notebook/Dockerfile.libs
  7. +3 −0 base-gpu-notebook/cuda11-pytorch-2.2.2/Dockerfile
  8. +3 −0 base-gpu-notebook/cuda12-pytorch-2.2.2/Dockerfile
  9. +8 −0 base-gpu-notebook/cuda12-ubuntu20.04/10activate-conda-env.sh
  10. +210 −0 base-gpu-notebook/cuda12-ubuntu20.04/Dockerfile
  11. +39 −0 base-gpu-notebook/cuda12-ubuntu20.04/docker_healthcheck.py
  12. +33 −0 base-gpu-notebook/cuda12-ubuntu20.04/fix-permissions
  13. +6 −0 base-gpu-notebook/cuda12-ubuntu20.04/initial-condarc
  14. +58 −0 base-gpu-notebook/cuda12-ubuntu20.04/jupyter_server_config.py
  15. +46 −0 base-gpu-notebook/cuda12-ubuntu20.04/run-hooks.sh
  16. +44 −0 base-gpu-notebook/cuda12-ubuntu20.04/start-notebook.py
  17. +5 −0 base-gpu-notebook/cuda12-ubuntu20.04/start-notebook.sh
  18. +26 −0 base-gpu-notebook/cuda12-ubuntu20.04/start-singleuser.py
  19. +5 −0 base-gpu-notebook/cuda12-ubuntu20.04/start-singleuser.sh
  20. +256 −0 base-gpu-notebook/cuda12-ubuntu20.04/start.sh
  21. +34 −0 base-gpu-notebook/generate_dockerfile.sh
  22. +12 −0 base-gpu-notebook/user-dirs.defaults
  23. +0 −17 base/docker-compose.yaml
  24. +0 −10 base/kinetic/Dockerfile
  25. +0 −10 base/melodic/Dockerfile
  26. +0 −14 base/noetic/Dockerfile
  27. +109 −162 build_and_publish.sh
  28. +0 −12 domestic/docker-compose.yaml
  29. +0 −25 domestic/melodic/Dockerfile
  30. +0 −49 domestic/melodic/base.rosinstall
  31. BIN figures/nvtop.png
  32. +36 −0 geo-notebook/cuda12-pytorch-2.2.2/Dockerfile
  33. +10 −0 geo-notebook/cuda12-pytorch-2.2.2/qgis/qgis.desktop
  34. +15 −0 geo-notebook/cuda12-pytorch-2.2.2/requirements.txt
  35. +0 −22 gpu-base-notebook/Dockerfile.libs
  36. +0 −104 gpu-base-notebook/generate_dockerfile.sh
  37. +0 −52 gpu-notebook/Dockerfile
  38. +13 −0 k8s-hub/2.0.0/Dockerfile
  39. +13 −0 k8s-hub/3.0.0/Dockerfile
  40. +13 −0 k8s-hub/3.2.1/Dockerfile
  41. +1 −0 k8s-hub/README.md
  42. +49 −0 ml-notebook/cuda11-pytorch-2.2.2/Dockerfile
  43. +5 −7 {gpu-notebook → ml-notebook/cuda11-pytorch-2.2.2}/requirements.txt
  44. +49 −0 ml-notebook/cuda12-pytorch-2.2.2/Dockerfile
  45. +32 −0 ml-notebook/cuda12-pytorch-2.2.2/requirements.txt
  46. +24 −0 nlp-notebook/cuda11-pytorch-2.2.2/Dockerfile
  47. +7 −0 nlp-notebook/cuda11-pytorch-2.2.2/requirements.txt
  48. +22 −0 nlp-notebook/cuda12-pytorch-2.2.2/Dockerfile
  49. +7 −0 nlp-notebook/cuda12-pytorch-2.2.2/requirements.txt
  50. +17 −0 ros/cuda12-noetic/Dockerfile
147 changes: 0 additions & 147 deletions .github/workflows/ci.yml

This file was deleted.

142 changes: 142 additions & 0 deletions .github/workflows/docker-build-test-upload.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
name: Build and push images

env:
OWNER: ${{ github.repository_owner }}

on:
workflow_call:
inputs:
parent-image:
description: Parent image name
required: false
type: string
default: default
parent-variant:
description: Parent variant tag prefix
required: false
type: string
default: default
load-parent:
description: Load parent image from GH artifact
type: boolean
required: false
default: true
image:
description: Image name
required: true
type: string
variant:
description: Variant tag prefix
required: false
type: string
default: default
context:
description: Path to Dockerfile location
required: false
type: string
default: default
registry:
description: Registry
required: false
type: string
default: quay.io
push:
description: Publish image to registry
type: boolean
required: false
default: false
runs-on:
description: GitHub Actions Runner image
required: true
type: string

jobs:
build-test-upload:
runs-on: ${{ inputs.runs-on }}

steps:
- name: Print input variables
run: |
echo "=====Input variables======"
echo "Parent Image: ${{ inputs.parent-image }}"
echo "Parent Variant: ${{ inputs.parent-variant }}"
echo "Image: ${{ inputs.image }}"
echo "Variant: ${{ inputs.variant }}"
echo "Context: ${{ inputs.context }}"
echo "Registry: ${{ inputs.registry }}"
echo "Push: ${{ inputs.push }}"
echo "Runs-on: ${{ inputs.runs-on }}"
# Image with CUDA needs extra disk space
- name: Free disk space 🧹
if: contains(inputs.variant, 'cuda')
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
docker-images: false
swap-storage: false

- name: Checkout Repo ⚡️
uses: actions/checkout@v4

# Self-hosted runners share a state (whole VM) between runs
# Also, they might have running or stopped containers,
# which are not cleaned up by `docker system prune`
- name: Reset docker state and cleanup artifacts 🗑️
run: |
docker kill $(docker ps --quiet) || true
docker rm $(docker ps --all --quiet) || true
docker system prune --all --force
rm -rf /tmp/a2s/
shell: bash

- name: Login to ghcr.io
if: ${{ inputs.registry == 'ghcr.io' }}
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.GH_USERNAME }}
password: ${{ secrets.GH_TOKEN }}

- name: Login to Quay Container Registry
if: ${{ inputs.registry == 'quay.io' }}
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_ROBOT_TOKEN }}

- name: Check changes in the image directory
uses: dorny/paths-filter@v3
id: changes
with:
filters: |
image_changed:
${{ inputs.image }}/${{ inputs.variant }}/**/!(README.md)
base_changed:
base-gpu-notebook/**/!(README.md)
workflow_changed:
.github/workflows/*.yml
base: ${{ github.ref }}

- name: Generate base image Dockerfile
if: contains(inputs.image, 'base-gpu-notebook')
run: |
# generate dockerfile
cd base-gpu-notebook && bash generate_dockerfile.sh && cd ..
- name: Build image 🛠
if: |
steps.changes.outputs.image_changed == 'true' ||
steps.changes.outputs.base_changed == 'true' ||
steps.changes.outputs.workflow_changed == 'true'
id: build_image
uses: docker/build-push-action@v5
with:
context: ${{ inputs.context }}
push: ${{ inputs.push }}
tags: ${{ inputs.registry }}/${{ env.OWNER }}/${{ inputs.image }}:${{ inputs.variant }}

Loading