diff --git a/.github/workflows/build_base.yml b/.github/workflows/build_base.yml index 0047434..a15666d 100644 --- a/.github/workflows/build_base.yml +++ b/.github/workflows/build_base.yml @@ -2,9 +2,12 @@ name: build_base_images env: PLATFORMS_DEFAULT: linux/amd64 - CUDA_VERSION_DEFAULT: 11.8.0 + CUDA_VERSION_DEFAULT: 12.1.0 CUDNN_VERSION_DEFAULT: 8 - ROCM_VERSION_DEFAULT: 5.7 + #ROCM_VERSION_DEFAULT: 5.7 + PYTORCH_VERSION_DEFAULT: 2.2.2 + TENSORFLOW_VERSION_DEFAULT: 2.17.0 + PUSH: true on: @@ -21,23 +24,23 @@ on: - linux/arm64/v8 cuda_version: description: 'CUDA Version to use' - default: '11.8.0' + default: '12.1.0' required: true cudnn_version: description: 'cuDNN Version to use' default: '8' required: true - rocm_version: - description: 'rocm Version to use' - default: '5.7' - required: true +# rocm_version: +# description: 'rocm Version to use' +# default: '5.7' +# required: true pytorch_version: description: 'pytorch Version to use' default: '2.2.2' required: true tensorflow_version: description: 'tensorflow Version to use' - default: '2.17' + default: '2.17.0' required: true push: branches: [ master ] @@ -66,10 +69,10 @@ jobs: id: cudnn run: echo "CUDNN_VERSION=${{ github.event.inputs.cudnn_version || env.CUDNN_VERSION_DEFAULT }}" >> $GITHUB_ENV - - name: set rocm version - id: rocm - run: echo "ROCM_VERSION=${{ github.event.inputs.rocm_version || env.ROCM_VERSION_DEFAULT }}" >> $GITHUB_ENV - - +# name: set rocm version +# id: rocm +# run: echo "ROCM_VERSION=${{ github.event.inputs.rocm_version || env.ROCM_VERSION_DEFAULT }}" >> $GITHUB_ENV +# - name: set pytorch version id: pytorch run: echo "PYTORCH_VERSION=${{ github.event.inputs.pytorch_version || env.PYTORCH_VERSION_DEFAULT }}" >> $GITHUB_ENV @@ -98,7 +101,7 @@ jobs: - name: More Free Space run: | - sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /usr/share/dotnet "$AGENT_TOOLSDIRECTORY" + sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /usr/share/dotnet - name: Set up QEMU uses: docker/setup-qemu-action@v2 @@ -111,51 +114,23 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and push base devel 20 04 - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-devel-20.04 - platforms: ${{ env.PLATFORMS }} - tags: > - icecube/icetray-base:devel-ubuntu20.04, - icecube/icetray-base:devel-ubuntu20.04-${{ env.current_date }} - - - name: Build and push base prod 20 04 - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-prod-20.04 - platforms: ${{ env.PLATFORMS }} - tags: > - icecube/icetray-base:prod-ubuntu20.04, - icecube/icetray-base:prod-ubuntu20.04-${{ env.current_date }} - name: Build and push base devel 22 04 uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icetray_base/Dockerfile_base-devel-22.04 platforms: ${{ env.PLATFORMS }} + build-args: | + BASE_IMAGE=ubuntu:22.04 tags: > icecube/icetray-base:devel-ubuntu22.04, icecube/icetray-base:devel-ubuntu22.04-${{ env.current_date }} - - - name: Build and push base devel 24 04 - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-devel-24.04 - platforms: ${{ env.PLATFORMS }} - tags: > - icecube/icetray-base:devel-ubuntu24.04, - icecube/icetray-base:devel-ubuntu24.04-${{ env.current_date }} - name: Build and push base devel 22 04 CUDA uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icetray_base/Dockerfile_base-devel-22.04 platforms: ${{ env.PLATFORMS }} build-args: | @@ -167,7 +142,7 @@ jobs: name: Build and push base devel 22 04 pytorch uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icetray_base/Dockerfile_base-devel-22.04 platforms: ${{ env.PLATFORMS }} build-args: | @@ -179,7 +154,7 @@ jobs: name: Build and push base devel 22 04 tensorflow uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icetray_base/Dockerfile_base-devel-22.04 platforms: ${{ env.PLATFORMS }} build-args: | @@ -188,90 +163,26 @@ jobs: icecube/icetray-base:devel-ubuntu22.04-tensorflow${{env.TENSORFLOW_VERSION}}, icecube/icetray-base:devel-ubuntu22.04-tensorflow${{env.TENSORFLOW_VERSION}}-${{ env.current_date }} - - name: Build and push base devel 24 04 CUDA - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-devel-24.04 - platforms: ${{ env.PLATFORMS }} - build-args: | - BASE_IMAGE=nvidia/cuda:12.6.1-cudnn-devel-ubuntu24.04 - tags: > - icecube/icetray-base:devel-ubuntu24.04-cuda12.6.1, - icecube/icetray-base:devel-ubuntu24.04-cuda12.6.1-${{ env.current_date }} - - - name: Build and push base devel 22 04 ROCm - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-devel-22.04 - platforms: ${{ env.PLATFORMS }} - build-args: | - BASE_IMAGE=rocm/dev-ubuntu-22.04:${{ env.ROCM_VERSION }}-complete - tags: > - icecube/icetray-base:devel-ubuntu22.04-rocm${{ env.ROCM_VERSION }}, - icecube/icetray-base:devel-ubuntu22.04-rocm${{ env.ROCM_VERSION }}-${{ env.current_date }} - # - - # name: Build and push base devel 24 04 ROCm - # uses: docker/build-push-action@v3 - # with: - # push: true - # file: icetray_base/Dockerfile_base-devel-24.04 - # platforms: ${{ env.PLATFORMS }} - # build-args: | - # BASE_IMAGE=rocm/dev-ubuntu-24.04:${{ env.ROCM_VERSION }}-complete - # tags: > - # icecube/icetray-base:devel-ubuntu24.04-rocm${{ env.ROCM_VERSION }}, - # icecube/icetray-base:devel-ubuntu24.04-rocm${{ env.ROCM_VERSION }}-${{ env.current_date }} - - - name: Build and push base prod 22 04 - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-prod-22.04 - platforms: ${{ env.PLATFORMS }} - tags: > - icecube/icetray-base:prod-ubuntu22.04, - icecube/icetray-base:prod-ubuntu22.04-${{ env.current_date }} - - - name: Build and push base prod 24 04 - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-prod-24.04 - platforms: ${{ env.PLATFORMS }} - tags: > - icecube/icetray-base:prod-ubuntu24.04, - icecube/icetray-base:prod-ubuntu24.04-${{ env.current_date }} - - - name: Build and push base devel rocky 8 - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-devel-rocky8 - platforms: ${{ env.PLATFORMS }} - tags: > - icecube/icetray-base:devel-rocky8, - icecube/icetray-base:devel-rocky8-${{ env.current_date }} - - - name: Build and push base devel rocky8 CUDA - uses: docker/build-push-action@v3 - with: - push: true - file: icetray_base/Dockerfile_base-devel-rocky8 - platforms: ${{ env.PLATFORMS }} - build-args: | - BASE_IMAGE=nvidia/cuda:${{env.CUDA_VERSION}}-cudnn${{env.CUDNN_VERSION}}-devel-rockylinux8 - tags: > - icecube/icetray-base:devel-rocky8-cuda${{env.CUDA_VERSION}}-cudnn${{env.CUDNN_VERSION}}, - icecube/icetray-base:devel-rocky8-cuda${{env.CUDA_VERSION}}-cudnn${{env.CUDNN_VERSION}}-${{ env.current_date }} - - +# name: Build and push base devel 22 04 ROCm +# uses: docker/build-push-action@v3 +# with: +# push: ${{env.PUSH}} +# file: icetray_base/Dockerfile_base-devel-22.04 +# platforms: ${{ env.PLATFORMS }} +# build-args: | +# BASE_IMAGE=rocm/dev-ubuntu-22.04:${{ env.ROCM_VERSION }}-complete +# tags: > +# icecube/icetray-base:devel-ubuntu22.04-rocm${{ env.ROCM_VERSION }}, +# icecube/icetray-base:devel-ubuntu22.04-rocm${{ env.ROCM_VERSION }}-${{ env.current_date }} +# - name: Build and push base devel rocky 9 uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icetray_base/Dockerfile_base-devel-rocky9 platforms: ${{ env.PLATFORMS }} + build-args: | + BASE_IMAGE=rockylinux:9 tags: > icecube/icetray-base:devel-rocky9, icecube/icetray-base:devel-rocky9-${{ env.current_date }} @@ -279,7 +190,7 @@ jobs: name: Build and push base devel rocky9 CUDA uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icetray_base/Dockerfile_base-devel-rocky9 platforms: ${{ env.PLATFORMS }} build-args: | @@ -287,13 +198,3 @@ jobs: tags: > icecube/icetray-base:devel-rocky9-cuda${{env.CUDA_VERSION}}-cudnn${{env.CUDNN_VERSION}}, icecube/icetray-base:devel-rocky9-cuda${{env.CUDA_VERSION}}-cudnn${{env.CUDNN_VERSION}}-${{ env.current_date }} - # - - # name: Build and push base devel debian sid - # uses: docker/build-push-action@v3 - # with: - # push: true - # file: icetray_base/Dockerfile_base-devel-debian-sid - # platforms: linux/amd64,linux/arm64/v8 - # tags: > - # icecube/icetray-base:devel-debian-sid, - # icecube/icetray-base:devel-debian-sid-${{ env.current_date }} diff --git a/.github/workflows/build_icetray.yml b/.github/workflows/build_icetray.yml index 8f376dc..52b590c 100644 --- a/.github/workflows/build_icetray.yml +++ b/.github/workflows/build_icetray.yml @@ -1,28 +1,24 @@ name: build_icetray_images env: - ICETRAY_VERSION_DEFAULT: v1.8.1 + ICETRAY_VERSION_DEFAULT: v1.13.0 + PUSH: true on: workflow_dispatch: inputs: icetray_version: description: 'IceTray Version' - default: v1.8.1 + default: v1.13.0 required: true push: branches: [ master ] paths: - 'install_icetray/Dockerfile*' - - jobs: docker: -# strategy: -# matrix: -# os: [ubuntu-latest, [self-hosted, LINUX, ARM64]] - runs-on: ubuntu-latest #${{ matrix.os }} + runs-on: ubuntu-latest timeout-minutes: 600 steps: - name: Get current date @@ -43,20 +39,6 @@ jobs: haskell: true large-packages: true swap-storage: true - # - name: manually remove gcloud - # shell: bash - # run: sudo apt-get remove google-cloud-cli - # - name: same as 'large-packages' but without 'google-cloud-sdk' - # shell: bash - # run: | - # sudo apt-get remove -y '^dotnet-.*' - # sudo apt-get remove -y '^llvm-.*' - # sudo apt-get remove -y 'php.*' - # sudo apt-get remove -y '^mongodb-.*' - # sudo apt-get remove -y '^mysql-.*' - # sudo apt-get remove -y azure-cli google-chrome-stable firefox powershell mono-devel libgl1-mesa-dri - # sudo apt-get autoremove -y - # sudo apt-get clean - name: Set IceTray Version run: echo "ICETRAY_VERSION=$( if [ ${{ github.event.inputs.icetray_version }} != ${{ env.ICETRAY_VERSION_DEFAULT}} ]; then @@ -75,27 +57,11 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and push icetray install 20 04 - uses: docker/build-push-action@v4 - with: - push: true - file: install_icetray/Dockerfile_install - build-args: | - TARGET_UBUNTU=ubuntu20.04 - VERSION=${{ env.ICETRAY_VERSION }} - CMAKE_CXX_STANDARD=17 - secrets: | - GHTOKEN=${{ secrets.PERSONAL_ACCESS_TOKEN }} - tags: > - icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu20.04-${{ runner.arch }}, - icecube/icetray:icetray-devel-current-ubuntu20.04-${{ runner.arch }}, - icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu20.04-${{ runner.arch }}-${{ env.current_date }} - name: Build and push icetray install 22 04 uses: docker/build-push-action@v4 with: - push: true + push: ${{env.PUSH}} file: install_icetray/Dockerfile_install build-args: | TARGET_UBUNTU=ubuntu22.04 @@ -107,34 +73,6 @@ jobs: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04-${{ runner.arch }}, icecube/icetray:icetray-devel-current-ubuntu22.04-${{ runner.arch }}, icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04-${{ runner.arch }}-${{ env.current_date }} - - - name: Build and push icetray prod 20 04 - uses: docker/build-push-action@v4 - with: - push: true - file: install_icetray/Dockerfile_prod - build-args: | - TARGET_UBUNTU=ubuntu20.04 - VERSION=${{ env.ICETRAY_VERSION }} - ARCH=${{ runner.arch }} - tags: > - icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu20.04-${{ runner.arch }}, - icecube/icetray:icetray-prod-current-ubuntu20.04-${{ runner.arch }}, - icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu20.04-${{ runner.arch }}-${{ env.current_date }} - - - name: Build and push icetray prod 22 04 - uses: docker/build-push-action@v4 - with: - push: true - file: install_icetray/Dockerfile_prod - build-args: | - TARGET_UBUNTU=ubuntu22.04 - VERSION=${{ env.ICETRAY_VERSION }} - ARCH=${{ runner.arch }} - tags: > - icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu22.04-${{ runner.arch }}, - icecube/icetray:icetray-prod-current-ubuntu22.04-${{ runner.arch }}, - icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu22.04-${{ runner.arch }}-${{ env.current_date }} manifest-docker: needs: [docker] runs-on: ubuntu-latest @@ -157,79 +95,15 @@ jobs: fi)" >> $GITHUB_ENV - name: Print Icetray version run: echo "Hello ${{ env.ICETRAY_VERSION }}" - - name: Create and push manifest images install 20 04 IceTray Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - base-image: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu20.04 - extra-images: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu20.04-X64 - # ,icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu20.04-ARM64 - push: true - - name: Create and push manifest images install 20 04 Current Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - input: icecube/icetray:icetray-devel-current-ubuntu20.04 - images: icecube/icetray:icetray-devel-current-ubuntu20.04-X64[,icecube/icetray:icetray-devel-current-ubuntu20.04-ARM64] - push: true -# - name: Create and push manifest images install 20 04 Date Version -# uses: Noelware/docker-manifest-action@master # or use whatever version. -# with: -# base-image: icecube/icetray:icetray-devel-current-ubuntu20.04-${{ env.current_date }} -# extra-images: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu20.04-X64-${{ env.current_date }},icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu20.04-ARM64-${{ env.current_date }} -# push: true - - name: Create and push manifest images install 22 04 IceTray Version uses: Noelware/docker-manifest-action@master # or use whatever version. with: base-image: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04 - extra-images: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04-X64 # ,icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04-ARM64 - push: true + extra-images: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04-X64 + push: ${{env.PUSH}} - name: Create and push manifest images install 22 04 Current Version uses: Noelware/docker-manifest-action@master # or use whatever version. with: base-image: icecube/icetray:icetray-devel-current-ubuntu22.04 - extra-images: icecube/icetray:icetray-devel-current-ubuntu22.04-X64 # ,icecube/icetray:icetray-devel-current-ubuntu22.04-ARM64 - push: true -# - name: Create and push manifest images install 22 04 Date Version -# uses: Noelware/docker-manifest-action@master # or use whatever version. -# with: -# base-image: icecube/icetray:icetray-devel-current-ubuntu22.04-${{ env.current_date }} -# extra-images: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04-X64-${{ env.current_date }},icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-ubuntu22.04-ARM64-${{ env.current_date }} -# push: true - - - name: Create and push manifest images prod 20 04 IceTray Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - base-image: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu20.04 - extra-images: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu20.04-X64 # ,icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu20.04-ARM64 - push: true - - name: Create and push manifest images prod 20 04 Current Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - base-image: icecube/icetray:icetray-prod-current-ubuntu20.04 - extra-images: icecube/icetray:icetray-prod-current-ubuntu20.04-X64 # ,icecube/icetray:icetray-prod-current-ubuntu20.04-ARM64 - push: true -# - name: Create and push manifest images prod 20 04 Date Version -# uses: Noelware/docker-manifest-action@master # or use whatever version. -# with: -# base-image: icecube/icetray:icetray-prod-current-ubuntu20.04-${{ env.current_date }} -# extra-images: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu20.04-X64-${{ env.current_date }},icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu20.04-ARM64-${{ env.current_date }} -# push: true - - - name: Create and push manifest images prod 22 04 IceTray Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - base-image: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu22.04 - extra-images: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu22.04-X64 #, icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu22.04-ARM64 - push: true - - name: Create and push manifest images prod 22 04 Current Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - base-image: icecube/icetray:icetray-prod-current-ubuntu22.04 - extra-images: icecube/icetray:icetray-prod-current-ubuntu22.04-X64 #,icecube/icetray:icetray-prod-current-ubuntu22.04-ARM64 - push: true -# - name: Create and push manifest images prod 22 04 Date Version -# uses: Noelware/docker-manifest-action@master # or use whatever version. -# with: -# base-image: icecube/icetray:icetray-prod-current-ubuntu22.04-${{ env.current_date }} -# extra-images: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu22.04-X64-${{ env.current_date }},icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-ubuntu22.04-ARM64-${{ env.current_date }} -# push: true + extra-images: icecube/icetray:icetray-devel-current-ubuntu22.04-X64 + push: ${{env.PUSH}} diff --git a/.github/workflows/build_icetray_images_experimental.yaml b/.github/workflows/build_icetray_images_experimental.yaml deleted file mode 100644 index 82bc2e5..0000000 --- a/.github/workflows/build_icetray_images_experimental.yaml +++ /dev/null @@ -1,137 +0,0 @@ -name: build_icetray_images_experimental - -env: - ICETRAY_VERSION_DEFAULT: v1.5.1 - -on: - workflow_dispatch: - inputs: - icetray_version: - description: 'IceTray Version' - default: v1.5.1 - required: true -# push: -# branches: [ master ] -# paths: -# - 'install_icetray/Dockerfile*' - - - -jobs: - docker: - strategy: - matrix: - os: [ubuntu-latest, [self-hosted, LINUX, ARM64]] - runs-on: ${{ matrix.os }} - timeout-minutes: 600 - steps: - - name: Get current date - id: date - run: echo "current_date=$(date +'%Y-%m-%d')" >> $GITHUB_ENV -# - name: Free Disk Space (Ubuntu) -# uses: jlumbroso/free-disk-space@main -# with: -# # this might remove tools that are actually needed, -# # if set to "true" but frees about 6 GB -# tool-cache: false -# # all of these default to true, but feel free to set to -# # "false" if necessary for your workflow -# android: true -# dotnet: true -# haskell: true -# large-packages: true -# swap-storage: true - - name: Set IceTray Version - run: echo "ICETRAY_VERSION=$( - if [ ${{ github.event.inputs.icetray_version }} != ${{ env.ICETRAY_VERSION_DEFAULT}} ]; then - echo ${{ github.event.inputs.icetray_version }}; - else - echo ${{ env.ICETRAY_VERSION_DEFAULT }}; - fi)" >> $GITHUB_ENV - - name: Print Icetray version - run: echo "Hello ${{ env.ICETRAY_VERSION }}" - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - - - name: Login to Docker Hub - uses: docker/login-action@v2 - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and push icetray install debian sid - uses: docker/build-push-action@v4 - with: - push: true - file: install_icetray/Dockerfile_install - build-args: | - TARGET_UBUNTU=debian-sid - VERSION=${{ env.ICETRAY_VERSION }} - CMAKE_CXX_STANDARD=17 - secrets: | - GHTOKEN=${{ secrets.PERSONAL_ACCESS_TOKEN }} - tags: > - icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-debian-sid-${{ runner.arch }}, - icecube/icetray:icetray-devel-current-debian-sid-${{ runner.arch }}, - icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-debian-sid-${{ runner.arch }}-${{ env.current_date }} -# - -# name: Build and push icetray debian sid -# uses: docker/build-push-action@v4 -# with: -# push: true -# file: install_icetray/Dockerfile_prod -# build-args: | -# TARGET_UBUNTU=debian-sid -# VERSION=${{ env.ICETRAY_VERSION }} -# ARCH=${{ runner.arch }} -# tags: > -# icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-debian-sid-${{ runner.arch }}, -# icecube/icetray:icetray-prod-current-debian-sid-${{ runner.arch }}, -# icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-debian-sid-${{ runner.arch }}-${{ env.current_date }} - manifest-docker: - needs: [docker] - runs-on: ubuntu-latest - steps: - - name: Get current date - id: date - run: echo "current_date=$(date +'%Y-%m-%d')" >> $GITHUB_ENV - - - name: Login to Docker Hub - uses: docker/login-action@v2 - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Set IceTray Version - run: echo "ICETRAY_VERSION=$( - if [ ${{ github.event.inputs.icetray_version }} != ${{ env.ICETRAY_VERSION_DEFAULT}} ]; then - echo ${{ github.event.inputs.icetray_version }}; - else - echo ${{ env.ICETRAY_VERSION_DEFAULT }}; - fi)" >> $GITHUB_ENV - - name: Print Icetray version - run: echo "Hello ${{ env.ICETRAY_VERSION }}" - - name: Create and push manifest images install debian sid IceTray Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - base-image: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-debian-sid - extra-images: icecube/icetray:icetray-devel-${{ env.ICETRAY_VERSION }}-debian-sid-X64,icecube/icetray:icetray-devel-${{ github.event.inputs.icetray_version }}-debian-sid-ARM64 - push: true - - name: Create and push manifest images install debian-sid Current Version - uses: Noelware/docker-manifest-action@master # or use whatever version. - with: - base-image: icecube/icetray:icetray-devel-current-ubuntu20.04 - extra-images: icecube/icetray:icetray-devel-current-debian-sid-X64,icecube/icetray:icetray-devel-current-debian-sid-ARM64 - push: true -# - name: Create and push manifest images prod debian-sid IceTray Version -# uses: Noelware/docker-manifest-action@master # or use whatever version. -# with: -# base-image: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-debian-sid -# extra-images: icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-debian-sid-X64,icecube/icetray:icetray-prod-${{ env.ICETRAY_VERSION }}-debian-sid-ARM64 -# push: true -# - name: Create and push manifest images prod debian-sid Current Version -# uses: Noelware/docker-manifest-action@master # or use whatever version. -# with: -# base-image: icecube/icetray:icetray-prod-current-debian-sid -# extra-images: icecube/icetray:icetray-prod-current-debian-sid-X64,icecube/icetray:icetray-prod-current-debian-sid-ARM64 -# push: true diff --git a/.github/workflows/build_ml.yml b/.github/workflows/build_ml.yml index 7a05ec1..1a16ba5 100644 --- a/.github/workflows/build_ml.yml +++ b/.github/workflows/build_ml.yml @@ -1,7 +1,8 @@ name: build_icetray_ml env: - ICETRAY_VERSION: v1.8.1 + ICETRAY_VERSION: v1.13.0 + PUSH: true on: workflow_dispatch: @@ -39,99 +40,75 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - # - - # name: Build and push icetray ml cuda 11.6 for 20 04 - # uses: docker/build-push-action@v3 - # with: - # push: true - # file: icecube_ml/Dockerfile_ubuntu_20.04_cuda11.6 - # build-args: | - # VERSION=${{ env.ICETRAY_VERSION }} - # tags: > - # icecube/icetray-ml:icetray-cuda11.6-${{ env.ICETRAY_VERSION }}-ubuntu20.04, - # icecube/icetray-ml:icetray-cuda11.6-current-ubuntu20.04, - # icecube/icetray-ml:icetray-cuda11.6-${{ env.ICETRAY_VERSION }}-ubuntu20.04-${{ env.current_date }} - - name: Build and push icetray ml cuda 11.8 for 22 04 + name: Build and push icetray ml cuda 12.1 for 22 04 uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8 build-args: | VERSION=${{ env.ICETRAY_VERSION }} tags: > - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-ubuntu22.04, - icecube/icetray-ml:icetray-current-cuda11.8-cudnn8-ubuntu22.04, - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-ubuntu22.04-${{ env.current_date }} - - - name: Build and push icetray ml cuda 11.8 for 22 04 with graphnet - uses: docker/build-push-action@v3 - with: - push: true - file: icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet - build-args: | - VERSION=${{ env.ICETRAY_VERSION }} - tags: > - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-graphnet-ubuntu22.04, - icecube/icetray-ml:icetray-current-cuda11.8-cudnn8-graphnet-ubuntu22.04, - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-graphnet-ubuntu22.04-${{ env.current_date }} + icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudnn8-ubuntu22.04, + icecube/icetray-ml:icetray-current-cuda12.1-cudnn8-ubuntu22.04, + icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudnn8-ubuntu22.04-${{ env.current_date }} + # - + # name: Build and push icetray ml cuda 11.8 for 22 04 with graphnet + # uses: docker/build-push-action@v3 + # with: + # push: ${{env.PUSH}} + # file: icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet + # build-args: | + # VERSION=${{ env.ICETRAY_VERSION }} + # tags: > + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-graphnet-ubuntu22.04, + # icecube/icetray-ml:icetray-current-cuda11.8-cudnn8-graphnet-ubuntu22.04, + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-graphnet-ubuntu22.04-${{ env.current_date }} - - name: Build and push icetray ml cuda 11.8 for 22 04 with tensorflow + name: Build and push icetray ml cuda 12.1 for 22 04 with tensorflow uses: docker/build-push-action@v3 with: - push: true + push: ${{env.PUSH}} file: icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_tensorflow build-args: | VERSION=${{ env.ICETRAY_VERSION }} tags: > - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-tf-ubuntu22.04, - icecube/icetray-ml:icetray-current-cuda11.8-cudnn8-tf-ubuntu22.04, - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-tf-ubuntu22.04-${{ env.current_date }} - - - name: Build and push icetray ml cuda 11.8 for 22 04 with graphnet dev - uses: docker/build-push-action@v3 - with: - push: true - file: icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet-devel - build-args: | - VERSION=${{ env.ICETRAY_VERSION }} - tags: > - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-graphnet-ubuntu22.04-devel, - icecube/icetray-ml:icetray-current-cuda11.8-cudnn8-graphnet-ubuntu22.04-devel, - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda11.8-cudnn8-graphnet-ubuntu22.04-devel-${{ env.current_date }} - - - name: Build and push icetray ml for 22 04 rocm - uses: docker/build-push-action@v3 - with: - push: true - file: icecube_ml/Dockerfile_ubuntu_22.04_rocm5.7 - build-args: | - VERSION=${{ env.ICETRAY_VERSION }} - tags: > - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-rocm5.7-ubuntu22.04-devel, - icecube/icetray-ml:icetray-current-rocm5.7-ubuntu22.04-devel, - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-rocm5.7-ubuntu22.04-devel-${{ env.current_date }} - - - name: Build and push icetray ml for 22 04 pytorch - uses: docker/build-push-action@v3 - with: - push: true - file: icecube_ml/Dockerfile_ubuntu_22.04_cuda12.1_cudann_pytorch2.2.2 - build-args: | - VERSION=${{ env.ICETRAY_VERSION }} - tags: > - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudann-pytorch2.2.2-ubuntu22.04-devel, - icecube/icetray-ml:icetray-current-cuda12.1-cudann-pytorch2.2.2-ubuntu22.04-devel, - icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudann-pytorch2.2.2-ubuntu22.04-devel-${{ env.current_date }} + icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudnn8-tf-ubuntu22.04, + icecube/icetray-ml:icetray-current-cuda12.1-cudnn8-tf-ubuntu22.04, + icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudnn8-tf-ubuntu22.04-${{ env.current_date }} + # - + # name: Build and push icetray ml cuda 12.1 for 22 04 with graphnet dev + # uses: docker/build-push-action@v3 + # with: + # push: ${{env.PUSH}} + # file: icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet-devel + # build-args: | + # VERSION=${{ env.ICETRAY_VERSION }} + # tags: > + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudnn8-graphnet-ubuntu22.04-devel, + # icecube/icetray-ml:icetray-current-cuda12.1-cudnn8-graphnet-ubuntu22.04-devel, + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudnn8-graphnet-ubuntu22.04-devel-${{ env.current_date }} + # - + # name: Build and push icetray ml for 22 04 rocm + # uses: docker/build-push-action@v3 + # with: + # push: ${{env.PUSH}} + # file: icecube_ml/Dockerfile_ubuntu_22.04_rocm5.7 + # build-args: | + # VERSION=${{ env.ICETRAY_VERSION }} + # tags: > + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-rocm5.7-ubuntu22.04-devel, + # icecube/icetray-ml:icetray-current-rocm5.7-ubuntu22.04-devel, + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-rocm5.7-ubuntu22.04-devel-${{ env.current_date }} # - - # name: Build and push icetray ml 20 04 + # name: Build and push icetray ml for 22 04 pytorch # uses: docker/build-push-action@v3 # with: - # push: true - # file: icecube_ml/Dockerfile_ubuntu_20.04_icecube_ml + # push: ${{env.PUSH}} + # file: icecube_ml/Dockerfile_ubuntu_22.04_cuda12.1_cudann_pytorch2.2.2 # build-args: | # VERSION=${{ env.ICETRAY_VERSION }} # tags: > - # icecube/icetray-ml:icetray-ml-base-${{ env.ICETRAY_VERSION }}-ubuntu20.04, - # icecube/icetray-ml:icetray-ml-base-current-ubuntu20.04, - # icecube/icetray-ml:icetray-ml-base-${{ env.ICETRAY_VERSION }}-ubuntu20.04-${{ env.current_date }} + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudann-pytorch2.2.2-ubuntu22.04-devel, + # icecube/icetray-ml:icetray-current-cuda12.1-cudann-pytorch2.2.2-ubuntu22.04-devel, + # icecube/icetray-ml:icetray-${{ env.ICETRAY_VERSION }}-cuda12.1-cudann-pytorch2.2.2-ubuntu22.04-devel-${{ env.current_date }} diff --git a/.github/workflows/build_nu_sources.yml b/.github/workflows/build_nu_sources.yml index 22efa9d..5c6911f 100644 --- a/.github/workflows/build_nu_sources.yml +++ b/.github/workflows/build_nu_sources.yml @@ -1,5 +1,8 @@ name: build_nu_souces_images +env: + PUSH: true + on: workflow_dispatch: push: @@ -40,7 +43,7 @@ jobs: name: Build and push neutrino-sources base 22.04 uses: docker/build-push-action@v4 with: - push: true + push: ${{env.PUSH}} file: neutrino_sources/Dockerfile secrets: | GHTOKEN=${{ secrets.PERSONAL_ACCESS_TOKEN }} diff --git a/almalinux8/icetray/main/Dockerfile_base-devel b/almalinux8/icetray/main/Dockerfile_base-devel deleted file mode 100644 index 279accf..0000000 --- a/almalinux8/icetray/main/Dockerfile_base-devel +++ /dev/null @@ -1,40 +0,0 @@ -#### Create a "developer" base - -FROM almalinux:8.5 as base-devel - -MAINTAINER IceCube - -WORKDIR /root -# -#Add the Powertools -RUN dnf install -y 'dnf-command(config-manager)' -RUN dnf config-manager --set-enabled powertools - -# add epel -RUN dnf install -y epel-release - -RUN dnf groupinstall -y 'Development Tools' -RUN dnf install -y cmake wget rsync python3-devel boost-devel boost-python3-devel \ - gsl-devel bzip2-devel zlib-devel python3-numpy python3-scipy fftw-devel \ - xz-devel openblas-devel libarchive-devel erfa-devel hdf5-devel suitesparse-devel \ - ncurses-devel cfitsio-devel libzstd-devel gmp-devel libxml2-devel python3-zmq \ - opencl-headers cppzmq-devel ocl-icd-devel python3-matplotlib python3-numexpr \ - python3-h5py python3-pyyaml python3-pandas ninja-build opencl-filesystem - -#setup pocl http://portablecl.org/download.html -RUN dnf install -y hwloc-devel llvm-devel clang-devel -RUN wget http://portablecl.org/downloads/pocl-1.7.tar.gz && tar zxvf pocl-1.7.tar.gz && \ - cd pocl-1.7 && mkdir build && cd build && cmake ../ && make && make install && cd -RUN ln -s /usr/local/etc/OpenCL/vendors/pocl.icd /etc/OpenCL/vendors - -RUN wget https://github.com/Starlink/pal/releases/download/v0.9.8/pal-0.9.8.tar.gz && \ - tar zxf pal-0.9.8.tar.gz && cd pal-0.9.8 && \ - ./configure --prefix=/usr/local --without-starlink && make install && cd - -RUN wget https://github.com/zeromq/cppzmq/archive/master.tar.gz && \ - tar -zxf master.tar.gz && cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr . && make install && cd - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.0.7.tar.gz | tar xz &&\ - cd photospline-2.0.7 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install diff --git a/dind/Dockerfile b/dind/Dockerfile deleted file mode 100644 index 0377182..0000000 --- a/dind/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -FROM docker:20.10-git -RUN apk add --update python3 -RUN ln -s /usr/bin/python3 /usr/local/bin/python -LABEL tag=wipac/docker:dind-python-20.10 diff --git a/icecube_ml/Dockerfile_ubuntu_20.04_cuda11.6 b/icecube_ml/Dockerfile_ubuntu_20.04_cuda11.6 deleted file mode 100644 index d5ecf2c..0000000 --- a/icecube_ml/Dockerfile_ubuntu_20.04_cuda11.6 +++ /dev/null @@ -1,93 +0,0 @@ -ARG VERSION=current -FROM icecube/icetray:icetray-prod-${VERSION}-ubuntu20.04-X64 as icetray-build -FROM nvidia/cuda:11.6.2-cudnn8-devel-ubuntu20.04 as cuda11.6 - -MAINTAINER IceCube - -WORKDIR /root - -# fix Nvidia signing keys -RUN apt-key del 7fa2af80 && \ - apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub - -# upgrade and install system packages (cuda image is a bit out of date) -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \ - DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.71-dev \ - libboost-system1.71-dev libboost-thread1.71-dev libboost-numpy1.71-dev \ - libboost-date-time1.71-dev libboost-serialization1.71-dev \ - libboost-filesystem1.71-dev libboost-program-options1.71-dev \ - libboost-regex1.71-dev libboost-iostreams1.71-dev libgsl0-dev \ - libboost-chrono1.71.0 libboost-atomic1.71.0 \ - libcdk5-dev libarchive-dev python3-scipy ipython3 \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-yaml python3-pandas \ - python3-dev python3-pip python-is-python3 \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - libzmq5 libzmq3-dev libzmqpp-dev libzmqpp4 \ - nano vim sudo man-db lsb-release ninja-build pkg-config doxygen\ - && apt-get clean - -#install IceCube add ons (needs to be redone for cuda base) - -RUN pip3 install 'setuptools>=59.5' sphinx breathe meson - -RUN mkdir cppzmq-master && \ - curl -L https://api.github.com/repos/zeromq/cppzmq/tarball/master | tar xz -C cppzmq-master/ --strip=1 && \ - cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local . && make install - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.1.0.tar.gz | tar xz && \ - cd photospline-2.1.0 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install - -# build NuFlux -RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.4.tar.gz | tar xz && \ - cd nuflux-2.0.4 && \ - meson build && \ - ninja -C build install && \ - pip install . - -# build SQuIDS -RUN curl -L https://github.com/jsalvado/SQuIDS/archive/refs/tags/v1.3.0.tar.gz | tar xz && \ - cd SQuIDS-1.3.0 && ./configure --prefix=/usr/local && \ - make && make install - -# build nuSQuIDS -RUN git clone https://github.com/arguelles/nuSQuIDS.git && \ - cd nuSQuIDS && ./configure --with-python-bindings --with-squids=/usr/local --prefix=/usr/local && \ - make && make python && make install && make python-install - -# cleanup files that cause permission fixer issues (broken sim links.) -RUN rm /root/SQuIDS-1.3.0/test/SQuIDS /root/nuSQuIDS/test/nuSQuIDS - -RUN mkdir -p /etc/OpenCL/vendors && echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd - -# stage in icetray -COPY --from=icetray-build /usr/local/icetray /usr/local/icetray -COPY --from=icetray-build /usr/local/icetray_src /usr/local/icetray_src -COPY --from=icetray-build /opt/i3-data /opt/i3-data - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -ENV I3_DATA /opt/i3-data -ENV TMPDIR /scratch - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/icecube_ml/Dockerfile_ubuntu_20.04_icecube_ml b/icecube_ml/Dockerfile_ubuntu_20.04_icecube_ml deleted file mode 100644 index b148434..0000000 --- a/icecube_ml/Dockerfile_ubuntu_20.04_icecube_ml +++ /dev/null @@ -1,33 +0,0 @@ -FROM icecube/icetray-ml:icetray-cuda11.6-current-ubuntu20.04 as icecube_ml - -MAINTAINER IceCube - -# build tensorflow -RUN pip3 install tensorflow==2.9.1 - -#graphnet stuff -ARG TORCH=1.12.0 -ARG PYG=2.0.4 -ARG CUDA=cu116 - -RUN pip3 install torch==${TORCH}+${CUDA} -f https://download.pytorch.org/whl/torch/ && \ - pip3 install torch-cluster -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html && \ - pip3 install torch-scatter -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html && \ - pip3 install torch-sparse -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html && \ - pip3 install torch-spline-conv -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html && \ - pip3 install torch-geometric==${PYG} - -RUN pip3 install git+https://github.com/icecube/graphnet.git@v0.2.0#egg=graphnet - -WORKDIR /usr/local/icetray -# I3DeepIce stuff -RUN git clone https://github.com/icecube/low-level-ml.git low-level-ml && \ - cp -r low-level-ml/low_level_ml lib && \ - git clone https://github.com/IceCubeOpenSource/i3deepice.git i3deepice && \ - cp -r i3deepice/i3deepice lib - -WORKDIR /root - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8 b/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8 index e434cc4..9590383 100644 --- a/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8 +++ b/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8 @@ -1,16 +1,14 @@ ARG VERSION=current -FROM icecube/icetray:icetray-prod-${VERSION}-ubuntu22.04-X64 as icetray-build -FROM icecube/icetray-base:devel-ubuntu22.04-cuda11.8.0-cudnn8 as cuda11.8 - -MAINTAINER IceCube +FROM icecube/icetray:icetray-devel-${VERSION}-ubuntu22.04-X64 as icetray-build +FROM icecube/icetray-base:devel-ubuntu22.04-cuda12.1.0-cudnn8 as cuda12.1 WORKDIR /root RUN mkdir -p /etc/OpenCL/vendors && echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd # stage in icetray -COPY --from=icetray-build /usr/local/icetray /usr/local/icetray -COPY --from=icetray-build /usr/local/icetray_src /usr/local/icetray_src +COPY --from=icetray-build /opt/icetray /opt/icetray +COPY --from=icetray-build /opt/icetray_src /opt/icetray_src COPY --from=icetray-build /opt/i3-data /opt/i3-data # set environment variables @@ -25,5 +23,5 @@ RUN python3 -c 'from matplotlib import pyplot' RUN mkdir -p /scratch # provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] +ENTRYPOINT ["/bin/bash", "/opt/icetray/bin/icetray-shell", "exec"] CMD ["/bin/bash"] diff --git a/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet-devel b/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet-devel index 337c7b3..32887aa 100644 --- a/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet-devel +++ b/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_graphnet-devel @@ -1,5 +1,5 @@ ARG VERSION=current -FROM icecube/icetray-ml:icetray-${VERSION}-cuda11.8-cudnn8-ubuntu22.04 +FROM icecube/icetray-ml:icetray-${VERSION}-cuda12.1-cudnn8-ubuntu22.04 RUN pip3 install --upgrade pip RUN pip3 install --upgrade astropy diff --git a/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_tensorflow b/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_tensorflow index c3635f6..c6a2813 100644 --- a/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_tensorflow +++ b/icecube_ml/Dockerfile_ubuntu_22.04_cuda11.8_cudann8_icetray_tensorflow @@ -1,5 +1,5 @@ ARG VERSION=current -FROM icecube/icetray-ml:icetray-${VERSION}-cuda11.8-cudnn8-ubuntu22.04 +FROM icecube/icetray-ml:icetray-${VERSION}-cuda12.1-cudnn8-ubuntu22.04 RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && apt-get install -y software-properties-common diff --git a/icecube_ml/Dockerfile_ubuntu_22.04_cuda12.1_cudann_pytorch2.2.2 b/icecube_ml/Dockerfile_ubuntu_22.04_cuda12.1_cudann_pytorch2.2.2 index b33b043..5ea4272 100644 --- a/icecube_ml/Dockerfile_ubuntu_22.04_cuda12.1_cudann_pytorch2.2.2 +++ b/icecube_ml/Dockerfile_ubuntu_22.04_cuda12.1_cudann_pytorch2.2.2 @@ -1,5 +1,5 @@ ARG VERSION=current -FROM icecube/icetray:icetray-prod-${VERSION}-ubuntu22.04-X64 as icetray-build +FROM icecube/icetray:icetray-devel-${VERSION}-ubuntu22.04-X64 as icetray-build FROM icecube/icetray-base:devel-ubuntu22.04-pytorch2.2.2-cuda12.1.0-cudnn8 as pytorch-cuda MAINTAINER IceCube @@ -9,8 +9,8 @@ WORKDIR /root RUN mkdir -p /etc/OpenCL/vendors && echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd # stage in icetray -COPY --from=icetray-build /usr/local/icetray /usr/local/icetray -COPY --from=icetray-build /usr/local/icetray_src /usr/local/icetray_src +COPY --from=icetray-build /opt/icetray /opt/icetray +COPY --from=icetray-build /opt/icetray_src /opt/icetray_src COPY --from=icetray-build /opt/i3-data /opt/i3-data # set environment variables @@ -25,5 +25,5 @@ ENV TMPDIR /scratch RUN mkdir -p /scratch # provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] +ENTRYPOINT ["/bin/bash", "/opt/icetray/bin/icetray-shell", "exec"] CMD ["/bin/bash"] \ No newline at end of file diff --git a/icetray_base/Dockerfile_base-devel-20.04 b/icetray_base/Dockerfile_base-devel-20.04 deleted file mode 100644 index 668d431..0000000 --- a/icetray_base/Dockerfile_base-devel-20.04 +++ /dev/null @@ -1,59 +0,0 @@ -#### Create a "developer" base - -FROM ubuntu:20.04 AS base-devel - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.71-dev \ - libboost-system1.71-dev libboost-thread1.71-dev libboost-numpy1.71-dev \ - libboost-date-time1.71-dev libboost-serialization1.71-dev \ - libboost-filesystem1.71-dev libboost-program-options1.71-dev \ - libboost-regex1.71-dev libboost-iostreams1.71-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy ipython3 \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-yaml python3-pandas \ - python3-dev python3-pip python-is-python3 python3-h5py \ - python3-venv \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - libzmq5 libzmq3-dev libzmqpp-dev libzmqpp4 \ - nano vim sudo man-db lsb-release ninja-build pkg-config doxygen\ - && apt-get clean - -RUN pip3 install 'setuptools>=59.5' sphinx breathe 'meson>=1.2.0' - -RUN mkdir cppzmq-master && \ - curl -L https://api.github.com/repos/zeromq/cppzmq/tarball/master | tar xz -C cppzmq-master/ --strip=1 && \ - cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local . && make install - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.1.0.tar.gz | tar xz && \ - cd photospline-2.1.0 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install - -# build NuFlux -RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.4.tar.gz | tar xz && \ - cd nuflux-2.0.4 && \ - meson setup build && \ - ninja -C build install && \ - pip install . - -# Clean up cached packages -RUN apt-get autoclean - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -# provide the entry point -CMD ["/bin/bash"] diff --git a/icetray_base/Dockerfile_base-devel-22.04 b/icetray_base/Dockerfile_base-devel-22.04 index fc150df..72ba98b 100644 --- a/icetray_base/Dockerfile_base-devel-22.04 +++ b/icetray_base/Dockerfile_base-devel-22.04 @@ -2,8 +2,6 @@ ARG BASE_IMAGE=ubuntu:22.04 FROM ${BASE_IMAGE} AS base-devel -MAINTAINER IceCube - WORKDIR /root # install system packages @@ -50,8 +48,8 @@ RUN mkdir cppzmq-master && \ cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local . && make install # install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.1.0.tar.gz | tar xz && \ - cd photospline-2.1.0 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install +RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.3.1.tar.gz | tar xz && \ + cd photospline-2.3.1 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install # build NuFlux RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.4.tar.gz | tar xz && \ diff --git a/icetray_base/Dockerfile_base-devel-24.04 b/icetray_base/Dockerfile_base-devel-24.04 deleted file mode 100644 index e1c387a..0000000 --- a/icetray_base/Dockerfile_base-devel-24.04 +++ /dev/null @@ -1,80 +0,0 @@ -#### Create a "developer" base -ARG BASE_IMAGE=ubuntu:24.04 -FROM ${BASE_IMAGE} AS base-devel - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \ - DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git \ - libboost-python1.83.0 \ - libboost-python1.83-dev libboost-system1.83-dev libboost-thread1.83-dev libboost-numpy1.83-dev \ - libboost-date-time1.83-dev libboost-serialization1.83-dev \ - libboost-filesystem1.83-dev libboost-program-options1.83-dev \ - libboost-regex1.83-dev libboost-iostreams1.83-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy ipython3 \ - libboost-date-time-dev libboost-filesystem-dev libboost-iostreams-dev \ - libboost-numpy-dev libboost-program-options-dev libboost-python-dev \ - libboost-regex-dev libboost-serialization-dev libboost-system-dev libboost-thread-dev \ - python3-urwid python3-numpy python3-matplotlib liblapack-dev\ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-yaml python3-pandas python3-seaborn \ - python3-dev python3-pip python-is-python3 python3-mysqldb python3-h5py \ - python3-venv python3-setuptools python3-sphinx python3-breathe \ - meson python3-mesonpy \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev python3-mysqldb \ - libsuitesparse-dev libfftw3-dev \ - hdf5-tools \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd clinfo \ - libzmq5 libzmq3-dev \ - nano vim sudo man-db lsb-release ninja-build pkg-config doxygen\ - && apt-get clean - -# RUN pip3 install 'setuptools>=59.5' sphinx breathe 'meson>=1.2.0' urllib3>=2.0.4 - -# zmqpp is needed, see hand-roll instructions: https://github.com/zeromq/zmqpp -RUN curl -L https://github.com/zeromq/zmqpp/archive/refs/tags/4.2.0.tar.gz | tar xz && \ - cd zmqpp-4.2.0 && make && make install - -RUN mkdir cppzmq-master && \ - curl -L https://api.github.com/repos/zeromq/cppzmq/tarball/master | tar xz -C cppzmq-master/ --strip=1 && \ - cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local . && make install - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.3.1.tar.gz | tar xz && \ - cd photospline-2.3.1 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install - -# build NuFlux -RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.4.tar.gz | tar xz && \ - cd nuflux-2.0.4 && \ - meson build && \ - ninja -C build install && \ - pip install --break-system-packages . - -# build SQuIDS -RUN curl -L https://github.com/jsalvado/SQuIDS/archive/refs/tags/v1.3.0.tar.gz | tar xz && \ - cd SQuIDS-1.3.0 && ./configure --prefix=/usr/local && \ - make && make install - -# build nuSQuIDS -RUN git clone https://github.com/arguelles/nuSQuIDS.git && \ - cd nuSQuIDS && ./configure --with-python-bindings --with-squids=/usr/local --prefix=/usr/local && \ - make && make python && make install && make python-install - -# cleanup files that cause permission fixer issues (broken sim links.) -RUN rm /root/SQuIDS-1.3.0/test/SQuIDS /root/nuSQuIDS/test/nuSQuIDS - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -# provide the entry point -CMD ["/bin/bash"] diff --git a/icetray_base/Dockerfile_base-devel-debian-sid b/icetray_base/Dockerfile_base-devel-debian-sid deleted file mode 100644 index 9b8cf8d..0000000 --- a/icetray_base/Dockerfile_base-devel-debian-sid +++ /dev/null @@ -1,53 +0,0 @@ -FROM debian:sid as base-devel - -MAINTAINER IceCube - -WORKDIR /root - -#install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.74-dev \ - libboost-system1.74-dev libboost-thread1.74-dev libboost-numpy1.74-dev \ - libboost-date-time1.74-dev libboost-serialization1.74-dev \ - libboost-filesystem1.74-dev libboost-program-options1.74-dev \ - libboost-regex1.74-dev libboost-iostreams1.74-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy ipython3 \ - libboost-date-time-dev libboost-filesystem-dev libboost-iostreams-dev \ - libboost-numpy-dev libboost-program-options-dev libboost-python-dev \ - libboost-regex-dev libboost-serialization-dev libboost-system-dev libboost-thread-dev \ - python3-full python3-urwid python3-numpy python3-matplotlib liblapack-dev\ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-yaml python3-pandas python3-seaborn \ - python3-dev python3-setuptools python3-sphinx python3-breathe python3-pip \ - python3-mesonpy python-is-python3 python3-mysqldb \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev python3-mysqldb \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - libzmq5 libzmq3-dev \ - nano vim sudo man-db lsb-release ninja-build pkg-config doxygen\ - && apt-get clean - - -RUN mkdir cppzmq-master && \ - curl -L https://api.github.com/repos/zeromq/cppzmq/tarball/master | tar xz -C cppzmq-master/ --strip=1 && \ - cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local . && make install - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.1.0.tar.gz | tar xz && \ - cd photospline-2.1.0 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install - -# build NuFlux -RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.4.tar.gz | tar xz && \ - cd nuflux-2.0.4 && meson build && ninja -C build install && pip3 install --prefix=/usr/local/ . - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -# provide the entry point -CMD ["/bin/bash"] diff --git a/icetray_base/Dockerfile_base-devel-fedora-rawhide b/icetray_base/Dockerfile_base-devel-fedora-rawhide deleted file mode 100644 index e50c84a..0000000 --- a/icetray_base/Dockerfile_base-devel-fedora-rawhide +++ /dev/null @@ -1,96 +0,0 @@ -FROM fedora:rawhide as base-devel - -MAINTAINER IceCube - -WORKDIR /root - -RUN dnf -y update - -RUN dnf -y group install "Development Tools" "Engineering and Scientific" - -RUN dnf -y install astropy-tools \ - bc \ - binutils \ - binutils-devel \ - blas \ - blas-devel \ - boost-date-time \ - boost-devel \ - boost-system \ - boost-thread \ - boost-filesystem \ - boost-program-options \ - boost-regex \ - boost-iostreams \ - boost-python3-devel \ - bzip2-devel \ - cfitsio-devel \ - cmake \ - cppzmq-devel \ - curl \ - davix-devel \ - dcap-devel \ - fontconfig \ - gcc \ - gcc-c++ \ - gcc-gfortran \ - git \ - glib2-devel \ - graphviz \ - gsl-devel \ - json-c-devel \ - hdf5 \ - lapack \ - lapack-devel \ - libaec-devel \ - libarchive \ - libattr-devel \ - libgfortran \ - libicu \ - libtool \ - libtool-ltdl \ - libtool-ltdl-devel \ - libuuid-devel \ - libxml2 \ - libxml2-devel \ - make \ - meson \ - ocl-icd \ - ocl-icd-devel \ - opencl-headers \ - openssl \ - p7zip \ - p7zip-plugins \ - python3-astropy \ - python3-breathe \ - python3-devel \ - python3-numpy \ - python3-matplotlib \ - python3-matplotlib-data \ - python3-scipy \ - python3-setuptools \ - redhat-lsb \ - redhat-lsb-core \ - srm-ifce-devel \ - # starlink-pal \ - suitesparse \ - wget \ - xrootd-client-devel \ - zlib-devel - -RUN wget https://github.com/zeromq/cppzmq/archive/master.tar.gz && \ - tar -zxf master.tar.gz && cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local . && make install - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.1.0.tar.gz | tar xz && \ - cd photospline-2.1.0 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install - -# build NuFlux -RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.4.tar.gz | tar xz && \ - cd nuflux-2.0.4 && meson build && ninja -C build install && pip3 install --prefix=/usr/local/ . - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -# provide the entry point -CMD ["/bin/bash"] diff --git a/icetray_base/Dockerfile_base-devel-rocky8 b/icetray_base/Dockerfile_base-devel-rocky8 deleted file mode 100644 index 5233b79..0000000 --- a/icetray_base/Dockerfile_base-devel-rocky8 +++ /dev/null @@ -1,143 +0,0 @@ -#### Create a "developer" base for Rocky 8 -# Why Rocky. NVIDIA uses Rocky 8 as the base image -# This is mostly meant as a image for grid computing -ARG BASE_IMAGE=rockylinux:8 -FROM ${BASE_IMAGE} as base-devel - -MAINTAINER IceCube - -WORKDIR /root - -RUN dnf install -y epel-release -RUN dnf install -y dnf-plugins-core - -RUN dnf config-manager --enable -y powertools -RUN dnf config-manager --enable -y epel -RUN dnf config-manager --enable -y extras - -RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then dnf -y install http://repo.opensciencegrid.org/osg/3.6/osg-3.6-el8-release-latest.rpm; fi - -# RUN dnf -y install http://repo.opensciencegrid.org/osg/3.6/osg-3.6-el8-release-latest.rpm - -RUN dnf -y group install "Development Tools" "Scientific Support" - -RUN dnf -y update - -RUN dnf -y upgrade - -RUN dnf -y install \ - astropy-tools \ - bc \ - binutils \ - binutils-devel \ - blas \ - blas-devel \ - boost \ - boost-date-time \ - boost-devel \ - boost-system \ - boost-thread \ - boost-filesystem \ - boost-program-options \ - boost-regex \ - boost-iostreams \ - boost-python3 \ - boost-python3-devel \ - bzip2-devel \ - cfitsio-devel \ - cmake \ - cppzmq-devel \ - curl \ - davix-devel \ - dcap-devel \ - fontconfig \ - gcc \ - gcc-c++ \ - gcc-gfortran \ - git \ - glib2-devel \ - graphviz \ - gsl-devel \ - json-c-devel \ - hdf5 \ - lapack \ - lapack-devel \ - libaec-devel \ - libarchive \ - libattr-devel \ - libgfortran \ - libicu \ - libtool \ - libtool-ltdl \ - libtool-ltdl-devel \ - libuuid-devel \ - libxml2 \ - libxml2-devel \ - make \ - meson \ - ocl-icd \ - ocl-icd-devel \ - opencl-headers \ - openssl \ - p7zip \ - p7zip-plugins \ - python3 \ - python3-devel \ - python3-astropy \ - python3-numpy \ - python3-matplotlib \ - python3-matplotlib-data \ - python3-scipy \ - redhat-lsb \ - redhat-lsb-core \ - srm-ifce-devel \ - # starlink-pal \ - suitesparse \ - wget \ - xrootd-client-devel \ - zlib-devel - -RUN pip3 install --upgrade 'setuptools>=59.5' sphinx breathe meson - -# OSG-specfic stuff -RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then dnf -y install osg-wn-client stashcache-client condor libquadmath; fi && rm -f /etc/grid-security/certificates/*.r0 - -# RUN dnf -y install osg-wn-client stashcache-client condor libquadmath - -RUN dnf clean all - -RUN wget https://github.com/liberfa/erfa/releases/download/v2.0.0/erfa-2.0.0.tar.gz && \ - tar -xzf erfa-2.0.0.tar.gz && \ - cd erfa-2.0.0 && \ - ./configure && \ - make && \ - make install - -RUN wget https://github.com/Starlink/pal/releases/download/v0.9.8/pal-0.9.8.tar.gz && \ - tar -xzf pal-0.9.8.tar.gz && \ - cd pal-0.9.8 && \ - ./configure --without-starlink && \ - make && \ - make install - -RUN mkdir cppzmq-master && \ - curl -L https://api.github.com/repos/zeromq/cppzmq/tarball/master | tar xz -C cppzmq-master/ --strip=1 && \ - cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local . && make install - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.1.0.tar.gz | tar xz && \ - cd photospline-2.1.0 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install - -# RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.3.tar.gz | tar xz && \ -# cd nuflux-2.0.3 && \ -# meson build && \ -# ninja -C build install && \ -# pip install . - -# required directories -RUN for MNTPOINT in \ - /cvmfs \ - ; do \ - mkdir -p $MNTPOINT ; \ - done diff --git a/icetray_base/Dockerfile_base-devel-rocky9 b/icetray_base/Dockerfile_base-devel-rocky9 index bc96013..fac5651 100644 --- a/icetray_base/Dockerfile_base-devel-rocky9 +++ b/icetray_base/Dockerfile_base-devel-rocky9 @@ -3,9 +3,6 @@ # This is mostly meant as a image for grid computing ARG BASE_IMAGE=rockylinux:9 FROM ${BASE_IMAGE} as base-devel - -MAINTAINER IceCube - WORKDIR /root RUN dnf install -y epel-release @@ -122,8 +119,8 @@ RUN mkdir cppzmq-master && \ # install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.1.0.tar.gz | tar xz && \ - cd photospline-2.1.0 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/ && make && make install +RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.3.1.tar.gz | tar xz && \ + cd photospline-2.3.1 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/ && make && make install # RUN curl -L https://github.com/icecube/nuflux/archive/refs/tags/v2.0.3.tar.gz | tar xz && \ diff --git a/icetray_base/Dockerfile_base-prod-20.04 b/icetray_base/Dockerfile_base-prod-20.04 deleted file mode 100644 index 54998e2..0000000 --- a/icetray_base/Dockerfile_base-prod-20.04 +++ /dev/null @@ -1,44 +0,0 @@ -#### Create a "slim" base - -FROM ubuntu:20.04 as base - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 zlib1g libzstd1 less \ - libboost-python1.71.0-py38 libboost-system1.71.0 libboost-thread1.71.0 \ - libboost-date-time1.71.0 libboost-serialization1.71.0 \ - libboost-filesystem1.71.0 libboost-program-options1.71.0 \ - libboost-regex1.71.0 libboost-iostreams1.71.0 libgsl23 \ - libboost-chrono1.71.0 libboost-atomic1.71.0 libboost-numpy1.71-dev \ - libcdk5nc6 libarchive13 python3 python3-scipy ipython3 \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - libzmq5 libzmqpp4 python3-zmq python3-pymysql python3-yaml python3-pandas \ - python3-pip python-is-python3 \ - zlib1g-dev liberfa1 libstarlink-pal0 \ - libopenblas-base libsprng2 libfftw3-3 \ - libsuitesparseconfig5 libspqr2 \ - libamd2 libcamd2 libbtf1 libcolamd2 \ - libccolamd2 libcholmod3 libcxsparse3 \ - libklu1 libldl2 libumfpack5 \ - libcfitsio8 libhdf5-103 libhdf5-cpp-103 libhealpix-cxx2 \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - lsb-release \ - && apt-get clean - -# stage in custom software -COPY --from=icecube/icetray-base:devel-ubuntu20.04 /usr/local /usr/local - -# Clean up cached packages -RUN apt-get autoclean - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -# provide the entry point -CMD ["/bin/bash"] diff --git a/icetray_base/Dockerfile_base-prod-22.04 b/icetray_base/Dockerfile_base-prod-22.04 deleted file mode 100644 index f08d86f..0000000 --- a/icetray_base/Dockerfile_base-prod-22.04 +++ /dev/null @@ -1,44 +0,0 @@ -#### Create a "slim" base - -FROM ubuntu:22.04 as base - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 zlib1g libzstd1 less \ - libboost-python1.74.0-py310 libboost-system1.74.0 libboost-thread1.74.0 \ - libboost-date-time1.74.0 libboost-serialization1.74.0 \ - libboost-filesystem1.74.0 libboost-program-options1.74.0 \ - libboost-regex1.74.0 libboost-iostreams1.74.0 libgsl27 \ - libboost-atomic1.74.0 libboost-chrono1.74.0 libboost-numpy1.74 \ - libcdk5nc6 libarchive13 python3 python3-scipy ipython3 \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - libzmq5 python3-zmq python3-pymysql python3-yaml python3-pandas \ - python3-pip python-is-python3 \ - zlib1g-dev liberfa1 libstarlink-pal0 \ - libopenblas-base libsprng2 libfftw3-3 \ - libsuitesparseconfig5 libspqr2 \ - libamd2 libcamd2 libbtf1 libcolamd2 \ - libccolamd2 libcholmod3 libcxsparse3 \ - libklu1 libldl2 libumfpack5 \ - libcfitsio9 libhdf5-103 libhdf5-cpp-103 libhealpix-cxx3 \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - lsb-release \ - && apt-get clean - -# stage in custom software -COPY --from=icecube/icetray-base:devel-ubuntu22.04 /usr/local /usr/local - -# Clean up cached packages -RUN apt-get autoclean - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -# provide the entry point -CMD ["/bin/bash"] diff --git a/icetray_base/Dockerfile_base-prod-24.04 b/icetray_base/Dockerfile_base-prod-24.04 deleted file mode 100644 index 6b93f5d..0000000 --- a/icetray_base/Dockerfile_base-prod-24.04 +++ /dev/null @@ -1,44 +0,0 @@ -#### Create a "slim" base - -FROM ubuntu:24.04 as base - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 zlib1g libzstd1 less \ - libboost-python1.83.0-py310 libboost-system1.83.0 libboost-thread1.83.0 \ - libboost-date-time1.83.0 libboost-serialization1.83.0 \ - libboost-filesystem1.83.0 libboost-program-options1.83.0 \ - libboost-regex1.83.0 libboost-iostreams1.83.0 libgsl27 \ - libboost-atomic1.83.0 libboost-chrono1.83.0 libboost-numpy1.83 \ - libcdk5nc6 libarchive13 python3 python3-scipy ipython3 \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - libzmq5 python3-zmq python3-pymysql python3-yaml python3-pandas \ - python3-pip python-is-python3 \ - zlib1g-dev liberfa1 libstarlink-pal0 \ - libopenblas-base libsprng2 libfftw3-3 \ - libsuitesparseconfig5 libspqr2 \ - libamd2 libcamd2 libbtf1 libcolamd2 \ - libccolamd2 libcholmod3 libcxsparse3 \ - libklu1 libldl2 libumfpack5 \ - libcfitsio9 libhdf5-103 libhdf5-cpp-103 libhealpix-cxx3 \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - lsb-release \ - && apt-get clean - -# stage in custom software -COPY --from=icecube/icetray-base:devel-ubuntu22.04 /usr/local /usr/local - -# Clean up cached packages -RUN apt-get autoclean - -# set environment variables -ENV LD_LIBRARY_PATH /usr/local/lib -# provide the entry point -CMD ["/bin/bash"] diff --git a/icetray_base/README.md b/icetray_base/README.md index 872235c..f54741c 100644 --- a/icetray_base/README.md +++ b/icetray_base/README.md @@ -3,14 +3,15 @@ Base docker images for Ubuntus Supported --------- -* Ubuntu 20.04 * Ubuntu 22.04 +* Rocky linux 9 These packages are not tied to a particular icetray version, but serve as a development and deployable base for other software to be added to. -Two flavors are created: +One flavor is created: * devel - includes all tools and libraries needed to compile icetray and tools -* prod - includes only libraries needed at runtime in deployment situations + +Note: "prod" images no longer supported, just use the devel. Deploying --------- @@ -18,12 +19,6 @@ Uses docker github actions to build per docker/setup-buildx-action Versions -------- -- 20.04 includes devel tagged as: - - icecube/icetray-base:devel-ubuntu20.04 - - icecube/icetray-base:devel-ubuntu20.04-YYYY-MM-DD -- 20.04 includes prod tagged as: - - icecube/icetray-base:prod-ubuntu20.04 - - icecube/icetray-base:prod-ubuntu20.04-YYYY-MM-DD - 22.04 includes devel tagged as: - icecube/icetray-base:devel-ubuntu22.04 - icecube/icetray-base:devel-ubuntu22.04-YYYY-MM-DD diff --git a/install_icetray/Dockerfile_install b/install_icetray/Dockerfile_install index 54ed59e..dbda28b 100644 --- a/install_icetray/Dockerfile_install +++ b/install_icetray/Dockerfile_install @@ -1,17 +1,13 @@ -ARG TARGET_UBUNTU=ubuntu20.04 +ARG TARGET_UBUNTU=ubuntu22.04 FROM icecube/icetray-base:devel-${TARGET_UBUNTU} as install ARG CMAKE_CXX_STANDARD=17 ARG VERSION=v1.7.2 - -MAINTAINER IceCube - WORKDIR /root # set up test data directory -RUN mkdir /opt/i3-data -RUN mkdir /opt/i3-data/i3-test-data +RUN mkdir /opt/i3-data && mkdir /opt/i3-data/i3-test-data && mkdir /opt/icetray # check out icetray RUN mkdir /root/icetray && mkdir /root/icetray/build @@ -21,23 +17,23 @@ RUN mkdir /root/icetray && mkdir /root/icetray/build RUN echo $CMAKE_CXX_STANDARD RUN echo $VERSION -RUN mkdir /usr/local/icetray_src -WORKDIR /usr/local/icetray_src +RUN mkdir /opt/icetray_src +WORKDIR /opt/icetray_src RUN git init && git checkout -b ${VERSION} && git config advice.detachedHead false RUN --mount=type=secret,id=GHTOKEN GHTOKEN=$(cat /run/secrets/GHTOKEN) && curl -sS -f -I -H "Authorization: token ${GHTOKEN}" https://api.github.com && \ git pull --depth 1 https://${GHTOKEN}@github.com/icecube/icetray.git ${VERSION} -RUN echo ${VERSION} > /usr/local/icetray_src/version_tag -RUN echo ${CMAKE_CXX_STANDARD} > /usr/local/icetray_src/cxx_standard +RUN echo ${VERSION} > /opt/icetray_src/version_tag +RUN echo ${CMAKE_CXX_STANDARD} > /opt/icetray_src/cxx_standard RUN env | sort # build icetray WORKDIR /root/icetray/build -RUN cmake /usr/local/icetray_src \ +RUN cmake /opt/icetray_src \ -DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ -DCMAKE_BUILD_TYPE=Release \ -DINSTALL_TOOL_LIBS=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr/local/icetray \ + -DCMAKE_INSTALL_PREFIX=/opt/icetray \ && make -j4 # install icetray @@ -45,21 +41,21 @@ RUN make install # set environment variables ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data +# ENV I3_TESTDATA /opt/i3-data/i3-test-data ENV TMPDIR /scratch # install photon tables -RUN mkdir -p /opt/i3-data/photon-tables/splines +# RUN mkdir -p /opt/i3-data/photon-tables/splines # wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.abs.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.abs.fits && \ # wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.prob.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.prob.fits # install baseline GCDs -#RUN mkdir /opt/i3-data/baseline_gcds && \ +# RUN mkdir /opt/i3-data/baseline_gcds && \ # wget -nv -N -t 5 -P /opt/i3-data/baseline_gcds -r -l 1 -A *.i3* -nd https://icecube:skua@convey.icecube.wisc.edu/data/user/followup/baseline_gcds/ && \ # chmod -R u+rwX,go+rX,go-w /opt/i3-data/baseline_gcds # install test data -RUN rsync -vrlpt --delete code.icecube.wisc.edu::Offline/test-data/trunk/ /opt/i3-data/i3-test-data/ +# RUN rsync -vrlpt --delete code.icecube.wisc.edu::Offline/test-data/trunk/ /opt/i3-data/i3-test-data/ # build the matplotlib font cache (prevents warnings about the font cache on startup) RUN python3 -c 'from matplotlib import pyplot' @@ -72,5 +68,5 @@ WORKDIR /root # Cleanup! RUN rm -rf /root/icetray # provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] +ENTRYPOINT ["/bin/bash", "/opt/icetray/bin/icetray-shell", "exec"] CMD ["/bin/bash"] diff --git a/install_icetray/Dockerfile_prod b/install_icetray/Dockerfile_prod deleted file mode 100644 index b147eb1..0000000 --- a/install_icetray/Dockerfile_prod +++ /dev/null @@ -1,39 +0,0 @@ -ARG TARGET_UBUNTU=ubuntu20.04 -ARG VERSION=current -ARG ARCH=X64 -FROM icecube/icetray:icetray-devel-${VERSION}-${TARGET_UBUNTU}-${ARCH} as icetray-build -FROM icecube/icetray-base:prod-${TARGET_UBUNTU} as prod - -MAINTAINER IceCube - -WORKDIR /root - -# stage in icetray -COPY --from=icetray-build /usr/local/icetray /usr/local/icetray -COPY --from=icetray-build /usr/local/icetray_src /usr/local/icetray_src -RUN mkdir /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -#ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# install photon tables -RUN mkdir -p /opt/i3-data/photon-tables/splines -# wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.abs.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.abs.fits && \ -# wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.prob.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.prob.fits - -# install baseline GCDs -#RUN mkdir /opt/i3-data/baseline_gcds && \ -# wget -nv -N -t 5 -P /opt/i3-data/baseline_gcds -r -l 1 -A *.i3* -nd https://icecube:skua@convey.icecube.wisc.edu/data/user/followup/baseline_gcds/ && \ -# chmod -R u+rwX,go+rX,go-w /opt/i3-data/baseline_gcds - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/install_icetray/README.md b/install_icetray/README.md index 2989a9c..4df244d 100644 --- a/install_icetray/README.md +++ b/install_icetray/README.md @@ -3,14 +3,12 @@ IceTray docker images for Ubuntus Supported --------- -* Ubuntu 20.04 * Ubuntu 22.04 These images install particular tagged version of icetray along with test-data, etc. Two flavors are created: -* devel - install of icetray in /usr/local/icetray, with /usr/local/icetray\_src, test-data -* prod - only compiled icetray libraries, needed GCD and photonics tables. +* devel - install of icetray in /usr/local/icetray, with /usr/local/icetray\_src Deploying --------- @@ -18,14 +16,6 @@ Uses docker github actions to build per docker/setup-buildx-action Versions -------- -- 20.04 includes devel tagged as: - - icecube/icetray:icetray-devel-vX.Y.Z-ubuntu20.04 - - icecube/icetray:icetray-devel-vX.Y.Z-ubuntu20.04-YYYY-MM-DD - - icecube/icetray:icetray-devel-current-ubuntu20.04 -- 20.04 includes prod tagged as: - - icecube/icetray:icetray-prod-vX.Y.Z-ubuntu20.04 - - icecube/icetray:icetray-prod-vX.Y.Z-ubuntu20.04-YYYY-MM-DD - - icecube/icetray:icetray-prod-current-ubuntu20.04 - 22.04 includes devel tagged as: - icecube/icetray:icetray-devel-vX.Y.Z-ubuntu22.04 - icecube/icetray:icetray-devel-vX.Y.Z-ubuntu22.04-YYYY-MM-DD diff --git a/jupyter_nb/Dockerfile_jupyter b/jupyter_nb/Dockerfile_jupyter index 898db23..e2f0db4 100644 --- a/jupyter_nb/Dockerfile_jupyter +++ b/jupyter_nb/Dockerfile_jupyter @@ -5,7 +5,6 @@ ARG BASE_CONT=icecube/icetray-ml:icetray-ml-base-current-ubuntu20.04 FROM ${BASE_CONT} as icetray_base -MAINTAINER IceCube ARG NB_USER="jovyan" ARG NB_UID="1000" @@ -21,6 +20,7 @@ ENV DEBIAN_FRONTEND noninteractive RUN apt-get update --yes && \ apt-get install --yes --no-install-recommends \ fonts-liberation \ + dvipng texlive-latex-extra texlive-fonts-recommended cm-super \ locales \ pandoc \ run-one \ diff --git a/neutrino_sources/Dockerfile b/neutrino_sources/Dockerfile index 0f892e3..3c2dd0b 100644 --- a/neutrino_sources/Dockerfile +++ b/neutrino_sources/Dockerfile @@ -1,34 +1,37 @@ -ARG BASEIMAGE=icecube/icetray:icetray-prod-current-ubuntu22.04-X64 +ARG BASEIMAGE=icecube/icetray:icetray-devel-current-ubuntu22.04-X64 FROM ${BASEIMAGE} as icetray_base -MAINTAINER IceCube - #Add some standard nu-sources tools RUN mkdir /usr/local/icecube WORKDIR /usr/local/icecube -## Skyllh v22_04_28a -RUN curl -L https://github.com/icecube/skyllh/archive/refs/tags/v22_04_28a.tar.gz | tar xz -ENV PYTHONPATH="${PYTHONPATH}:/usr/local/icecube/skyllh-22_04_28a" +# update setuptools and pip +RUN pip install --upgrade pip setuptools packaging + +## Skyllh v24_01_00 +RUN curl -L https://github.com/icecube/skyllh/archive/refs/tags/v24.1.0.tar.gz | tar xz +ENV PYTHONPATH="${PYTHONPATH}:/usr/local/icecube/skyllh-24.1.0" -## I3sklyllh v22_04_28 + +## I3sklyllh v24_01_00 RUN --mount=type=secret,id=GHTOKEN GHTOKEN=$(cat /run/secrets/GHTOKEN) && \ - curl -L --url 'https://github.com/icecube/i3skyllh/archive/refs/tags/v22_04_28.tar.gz' --header "Authorization: Bearer ${GHTOKEN}" | tar xz -ENV PYTHONPATH="${PYTHONPATH}:/usr/local/icecube/i3skyllh-22_04_28" + curl -L --url 'https://github.com/icecube/i3skyllh/archive/refs/tags/v24.1.0.tar.gz' --header "Authorization: Bearer ${GHTOKEN}" | tar xz +ENV PYTHONPATH="${PYTHONPATH}:/usr/local/icecube/i3skyllh-24.1.0" + RUN mkdir /root/src WORKDIR /root/src -## Skylab v2.17 +## Skylab v2.18 RUN --mount=type=secret,id=GHTOKEN GHTOKEN=$(cat /run/secrets/GHTOKEN) && \ - curl -L --url 'https://github.com/icecube/skylab/archive/refs/tags/v2.17.tar.gz' --header "Authorization: Bearer ${GHTOKEN}" |tar xz &&\ - cd skylab-2.17 && pip3 install ./ + curl -L --url 'https://github.com/icecube/skylab/archive/refs/tags/v2.18.tar.gz' --header "Authorization: Bearer ${GHTOKEN}" |tar xz &&\ + cd skylab-2.18 && pip3 install ./ -## CSKY v1.1.14b +## CSKY v1.1.14f WORKDIR /root/src RUN --mount=type=secret,id=GHTOKEN GHTOKEN=$(cat /run/secrets/GHTOKEN) && \ - curl -L --url 'https://github.com/icecube/csky/archive/refs/tags/v1.1.14b.tar.gz' --header "Authorization: Bearer ${GHTOKEN}" | tar xz && \ - cd csky-1.1.14b && pip3 install pybind11 histlite && pip3 install ./ + curl -L --url 'https://github.com/icecube/csky/archive/refs/tags/v1.1.14f.tar.gz' --header "Authorization: Bearer ${GHTOKEN}" | tar xz && \ + cd csky-1.1.14f && pip3 install pybind11 histlite && pip3 install ./ # provide the entry point WORKDIR /root diff --git a/neutrino_sources/README.md b/neutrino_sources/README.md index fb7175f..9b1339d 100644 --- a/neutrino_sources/README.md +++ b/neutrino_sources/README.md @@ -3,7 +3,7 @@ IceTray docker images for neutrino sources Supported --------- -* Ubuntu 20.04 +* Ubuntu 22.04 These images add standard nu-sources tools to icetray images diff --git a/ubuntu20.04/combo/V01-01-00/Dockerfile b/ubuntu20.04/combo/V01-01-00/Dockerfile deleted file mode 100644 index 3964a3b..0000000 --- a/ubuntu20.04/combo/V01-01-00/Dockerfile +++ /dev/null @@ -1,356 +0,0 @@ -##### first, install a base Ubuntu system (with development packages) - -FROM ubuntu:20.04 as base - -FROM base as install - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.71-dev \ - libboost-system1.71-dev libboost-thread1.71-dev libboost-numpy1.71-dev \ - libboost-date-time1.71-dev libboost-serialization1.71-dev \ - libboost-filesystem1.71-dev libboost-program-options1.71-dev \ - libboost-regex1.71-dev libboost-iostreams1.71-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-dev python3-pip \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - ocl-icd-libopencl1 ocl-icd-opencl-dev \ - libzmq5 libzmq3-dev libzmqpp-dev libzmqpp4 \ - nano vim sudo man-db lsb-release \ - && apt-get clean - -RUN wget https://github.com/zeromq/cppzmq/archive/master.tar.gz && \ - tar -zxf master.tar.gz && cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr . && make install - -######################## BASE SYSTEM DONE ######################## -#### install icetray -################################################################## - -# set up test data directory -RUN mkdir /opt/i3-data -ENV I3_DATA /opt/i3-data -RUN mkdir /opt/i3-data/i3-test-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data - -# check out icetray -RUN mkdir /root/combo && mkdir /root/combo/build && \ - svn co http://code.icecube.wisc.edu/svn/meta-projects/combo/releases/V01-01-00 /root/combo/src \ - --username=icecube --password=skua --no-auth-cache - -# build icetray -WORKDIR /root/combo/build -RUN cmake /root/combo/src \ - -DCMAKE_BUILD_TYPE=Release \ - -DINSTALL_TOOL_LIBS=OFF \ - -DUSE_GFILT=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr/local/icetray \ - -DUSE_PYTHON3=OFF \ - && make -j4 - -# install icetray -RUN make install - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/root/combo/build/env-shell.sh", "exec"] -CMD ["/bin/bash"] - -# create an icecube user -#RUN adduser icecube --disabled-password -#USER icecube -#WORKDIR /home/icecube - - -################################################################## -#### Now install the slim system, copying icetray from the base. -################################################################## - -FROM base as slim - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget rsync gzip bzip2 xz-utils liblzma5 zlib1g libzstd1 less \ - libboost-python1.71.0-py38 libboost-system1.71.0 libboost-thread1.71.0 \ - libboost-date-time1.71.0 libboost-serialization1.71.0 \ - libboost-filesystem1.71.0 libboost-program-options1.71.0 \ - libboost-regex1.71.0 libboost-iostreams1.71.0 libgsl23 \ - libcdk5nc6 libarchive13 python3 python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - libzmq5 libzmqpp4 python3-zmq python3-pymysql \ - zlib1g-dev liberfa1 libstarlink-pal0 \ - libopenblas-base libsprng2 libfftw3-3 \ - libsuitesparseconfig5 libspqr2 \ - libamd2 libcamd2 libbtf1 libcolamd2 \ - libccolamd2 libcholmod3 libcxsparse3 \ - libklu1 libldl2 libumfpack5 \ - libcfitsio8 libhdf5-103 libhdf5-cpp-103 libhealpix-cxx2 \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - ocl-icd-libopencl1 ocl-icd-opencl-dev lsb-release \ - && apt-get clean - -COPY --from=install /usr/include/zmq.hpp /usr/include/zmq.hpp -COPY --from=install /usr/include/zmq_addon.hpp /usr/include/zmq_addon.hpp - -# stage in icetray from the previous build -COPY --from=install /usr/local/icetray /usr/local/icetray -COPY --from=install /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] - - -################################################################## -#### Now install the prod system, with i3-data and GCD files. -################################################################## - -FROM base as prod - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget rsync gzip bzip2 xz-utils liblzma5 zlib1g libzstd1 less \ - libboost-python1.71.0-py38 libboost-system1.71.0 libboost-thread1.71.0 \ - libboost-date-time1.71.0 libboost-serialization1.71.0 \ - libboost-filesystem1.71.0 libboost-program-options1.71.0 \ - libboost-regex1.71.0 libboost-iostreams1.71.0 libgsl23 \ - libcdk5nc6 libarchive13 python3 python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - libzmq5 libzmqpp4 python3-zmq python3-pymysql \ - zlib1g-dev liberfa1 libstarlink-pal0 \ - libopenblas-base libsprng2 libfftw3-3 \ - libsuitesparseconfig5 libspqr2 \ - libamd2 libcamd2 libbtf1 libcolamd2 \ - libccolamd2 libcholmod3 libcxsparse3 \ - libklu1 libldl2 libumfpack5 \ - libcfitsio8 libhdf5-103 libhdf5-cpp-103 libhealpix-cxx2 \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - ocl-icd-libopencl1 ocl-icd-opencl-dev lsb-release \ - && apt-get clean - -COPY --from=install /usr/include/zmq.hpp /usr/include/zmq.hpp -COPY --from=install /usr/include/zmq_addon.hpp /usr/include/zmq_addon.hpp - -# stage in icetray from the previous build -COPY --from=install /usr/local/icetray /usr/local/icetray -COPY --from=install /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# install photon tables -RUN mkdir /opt/i3-data/photon-tables && \ - mkdir /opt/i3-data/photon-tables/splines && \ - wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.abs.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.abs.fits && \ - wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.prob.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.prob.fits - -# install baseline GCDs -RUN mkdir /opt/i3-data/baseline_gcds && \ - wget -nv -N -t 5 -P /opt/i3-data/baseline_gcds -r -l 1 -A *.i3* -nd https://icecube:skua@convey.icecube.wisc.edu/data/user/followup/baseline_gcds/ && \ - chmod -R u+rwX,go+rX,go-w /opt/i3-data/baseline_gcds - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] - - -################################################################## -#### Now install the devel system, with a compiler and test data -################################################################## - -FROM base as devel - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.71-dev \ - libboost-system1.71-dev libboost-thread1.71-dev libboost-numpy1.71-dev \ - libboost-date-time1.71-dev libboost-serialization1.71-dev \ - libboost-filesystem1.71-dev libboost-program-options1.71-dev \ - libboost-regex1.71-dev libboost-iostreams1.71-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-dev python3-pip \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - ocl-icd-libopencl1 ocl-icd-opencl-dev \ - libzmq5 libzmq3-dev libzmqpp-dev libzmqpp4 \ - nano vim sudo man-db lsb-release \ - && apt-get clean - -RUN wget https://github.com/zeromq/cppzmq/archive/master.tar.gz && \ - tar -zxf master.tar.gz && cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr . && make install - -# stage in icetray from the previous build -COPY --from=install /usr/local/icetray /usr/local/icetray -COPY --from=prod /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# install test data -RUN rsync -vrlpt --delete code.icecube.wisc.edu::Offline/test-data/trunk/ /opt/i3-data/i3-test-data/ - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] - - -################################################################## -#### Now install the cuda system -################################################################## - -FROM nvidia/cuda:11.1-cudnn8-devel-ubuntu20.04 as cuda11.1 - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.71-dev \ - libboost-system1.71-dev libboost-thread1.71-dev libboost-numpy1.71-dev \ - libboost-date-time1.71-dev libboost-serialization1.71-dev \ - libboost-filesystem1.71-dev libboost-program-options1.71-dev \ - libboost-regex1.71-dev libboost-iostreams1.71-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-dev python3-pip \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - ocl-icd-libopencl1 ocl-icd-opencl-dev \ - libzmq5 libzmq3-dev libzmqpp-dev libzmqpp4 \ - nano vim sudo man-db lsb-release \ - && apt-get clean - -RUN wget https://github.com/zeromq/cppzmq/archive/master.tar.gz && \ - tar -zxf master.tar.gz && cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr . && make install - -RUN mkdir -p /etc/OpenCL/vendors && echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd - -# stage in icetray from the previous build -COPY --from=install /usr/local/icetray /usr/local/icetray -COPY --from=devel /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] - - -################################################################## -#### Now install the tensorflow system -################################################################## - -FROM install as install-tf - -# build NewNuFlux -RUN svn co http://code.icecube.wisc.edu/svn/sandbox/cweaver/NewNuFlux /root/combo/src/NewNuFlux \ - --username=icecube --password=skua --no-auth-cache - -WORKDIR /root/combo/build -RUN cmake /root/combo/src \ - -DCMAKE_BUILD_TYPE=Release \ - -DINSTALL_TOOL_LIBS=OFF \ - -DUSE_GFILT=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr/local/icetray \ - -DUSE_PYTHON3=OFF \ - && make -j4 - -# install icetray -RUN make install - -### now make the tensorflow image - -FROM cuda11.1 as tensorflow.2.4.0 - -MAINTAINER IceCube - -WORKDIR /root - -# build tensorflow -RUN pip3 install tensorflow==2.4.0 - -# stage in icetray from the previous build -COPY --from=install-tf /usr/local/icetray /usr/local/icetray - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/ubuntu20.04/combo/stable/Dockerfile_base b/ubuntu20.04/combo/stable/Dockerfile_base deleted file mode 100644 index 06f8aab..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_base +++ /dev/null @@ -1,35 +0,0 @@ -#### Create a "slim" base - -FROM ubuntu:20.04 as base - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget rsync gzip bzip2 xz-utils liblzma5 zlib1g libzstd1 less \ - libboost-python1.71.0-py38 libboost-system1.71.0 libboost-thread1.71.0 \ - libboost-date-time1.71.0 libboost-serialization1.71.0 \ - libboost-filesystem1.71.0 libboost-program-options1.71.0 \ - libboost-regex1.71.0 libboost-iostreams1.71.0 libgsl23 \ - libcdk5nc6 libarchive13 python3 python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - libzmq5 libzmqpp4 python3-zmq python3-pymysql python3-yaml python3-pandas \ - zlib1g-dev liberfa1 libstarlink-pal0 \ - libopenblas-base libsprng2 libfftw3-3 \ - libsuitesparseconfig5 libspqr2 \ - libamd2 libcamd2 libbtf1 libcolamd2 \ - libccolamd2 libcholmod3 libcxsparse3 \ - libklu1 libldl2 libumfpack5 \ - libcfitsio8 libhdf5-103 libhdf5-cpp-103 libhealpix-cxx2 \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - lsb-release \ - && apt-get clean - -# stage in ZMQ C++ -COPY --from=icecube/icetray:combo-stable-base-devel /usr/include/zmq.hpp /usr/include/zmq.hpp -COPY --from=icecube/icetray:combo-stable-base-devel /usr/include/zmq_addon.hpp /usr/include/zmq_addon.hpp diff --git a/ubuntu20.04/combo/stable/Dockerfile_base-devel b/ubuntu20.04/combo/stable/Dockerfile_base-devel deleted file mode 100644 index d23038c..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_base-devel +++ /dev/null @@ -1,42 +0,0 @@ -#### Create a "developer" base - -FROM ubuntu:20.04 as base-devel - -MAINTAINER IceCube - -WORKDIR /root - -# install system packages -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget curl rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.71-dev \ - libboost-system1.71-dev libboost-thread1.71-dev libboost-numpy1.71-dev \ - libboost-date-time1.71-dev libboost-serialization1.71-dev \ - libboost-filesystem1.71-dev libboost-program-options1.71-dev \ - libboost-regex1.71-dev libboost-iostreams1.71-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-yaml python3-pandas \ - python3-dev python3-pip python-is-python3 \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - libzmq5 libzmq3-dev libzmqpp-dev libzmqpp4 \ - nano vim sudo man-db lsb-release ninja-build doxygen\ - && apt-get clean - -RUN pip3 install sphinx breathe - -RUN wget https://github.com/zeromq/cppzmq/archive/master.tar.gz && \ - tar -zxf master.tar.gz && cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr . && make install - -# install photospline -RUN curl -L https://github.com/icecube/photospline/archive/refs/tags/v2.0.7.tar.gz | tar xz &&\ - cd photospline-2.0.7 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install diff --git a/ubuntu20.04/combo/stable/Dockerfile_cuda11.1 b/ubuntu20.04/combo/stable/Dockerfile_cuda11.1 deleted file mode 100644 index c0e29a0..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_cuda11.1 +++ /dev/null @@ -1,56 +0,0 @@ -FROM nvidia/cuda:11.1-cudnn8-devel-ubuntu20.04 as cuda11.1 - -MAINTAINER IceCube - -WORKDIR /root - -# upgrade and install system packages (cuda image is a bit out of date) -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \ - DEBIAN_FRONTEND=noninteractive apt-get install -y \ - tar wget rsync gzip bzip2 xz-utils liblzma5 liblzma-dev zlib1g zlib1g-dev \ - less build-essential cmake libbz2-dev libzstd-dev \ - libxml2-dev subversion git libboost-python1.71-dev \ - libboost-system1.71-dev libboost-thread1.71-dev libboost-numpy1.71-dev \ - libboost-date-time1.71-dev libboost-serialization1.71-dev \ - libboost-filesystem1.71-dev libboost-program-options1.71-dev \ - libboost-regex1.71-dev libboost-iostreams1.71-dev libgsl0-dev \ - libcdk5-dev libarchive-dev python3-scipy \ - python3-urwid python3-numpy python3-matplotlib \ - python3-numexpr cython3 python3-cffi python3-requests \ - python3-healpy python3-urllib3 python3-jsonschema \ - python3-zmq python3-pymysql python3-yaml python3-pandas \ - python3-dev python3-pip python-is-python3 \ - zlib1g-dev liberfa-dev libstarlink-pal-dev \ - libopenblas-dev libsprng2-dev \ - libsuitesparse-dev libfftw3-dev \ - libcfitsio-dev libhdf5-dev libhealpix-cxx-dev \ - opencl-headers opencl-c-headers opencl-clhpp-headers \ - opencl-dev pocl-opencl-icd \ - libzmq5 libzmq3-dev libzmqpp-dev libzmqpp4 \ - nano vim sudo man-db lsb-release \ - && apt-get clean - -RUN wget https://github.com/zeromq/cppzmq/archive/master.tar.gz && \ - tar -zxf master.tar.gz && cd cppzmq-master && \ - cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr . && make install - -RUN mkdir -p /etc/OpenCL/vendors && echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd - -# stage in icetray -COPY --from=icecube/icetray:combo-stable-install /usr/local/icetray /usr/local/icetray -COPY --from=icecube/icetray:combo-stable-install /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/ubuntu20.04/combo/stable/Dockerfile_devel b/ubuntu20.04/combo/stable/Dockerfile_devel deleted file mode 100644 index 453e346..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_devel +++ /dev/null @@ -1,27 +0,0 @@ -FROM icecube/icetray:combo-stable-base-devel as devel - -MAINTAINER IceCube - -WORKDIR /root - -# stage in icetray -COPY --from=icecube/icetray:combo-stable-install /usr/local/icetray /usr/local/icetray -COPY --from=icecube/icetray:combo-stable-install /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# install test data -RUN rsync -vrlpt --delete code.icecube.wisc.edu::Offline/test-data/trunk/ /opt/i3-data/i3-test-data/ - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/ubuntu20.04/combo/stable/Dockerfile_install b/ubuntu20.04/combo/stable/Dockerfile_install deleted file mode 100644 index f7fb072..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_install +++ /dev/null @@ -1,32 +0,0 @@ -FROM icecube/icetray:combo-stable-base-devel as install - -MAINTAINER IceCube - -WORKDIR /root - -# set up test data directory -RUN mkdir /opt/i3-data -ENV I3_DATA /opt/i3-data -RUN mkdir /opt/i3-data/i3-test-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data - -# check out icetray -RUN mkdir /root/combo && mkdir /root/combo/build -COPY icetray /root/combo/src - -# build icetray -WORKDIR /root/combo/build -RUN cmake /root/combo/src \ - -DCMAKE_BUILD_TYPE=Release \ - -DINSTALL_TOOL_LIBS=OFF \ - -DUSE_GFILT=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr/local/icetray \ - -DUSE_PYTHON3=OFF \ - && make -j4 - -# install icetray -RUN make install - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/root/combo/build/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/ubuntu20.04/combo/stable/Dockerfile_prod b/ubuntu20.04/combo/stable/Dockerfile_prod deleted file mode 100644 index 032936f..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_prod +++ /dev/null @@ -1,35 +0,0 @@ -FROM icecube/icetray:combo-stable-base as prod - -MAINTAINER IceCube - -WORKDIR /root - -# stage in icetray -COPY --from=icecube/icetray:combo-stable-install /usr/local/icetray /usr/local/icetray -COPY --from=icecube/icetray:combo-stable-install /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# install photon tables -RUN mkdir /opt/i3-data/photon-tables && \ - mkdir /opt/i3-data/photon-tables/splines && \ - wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.abs.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.abs.fits && \ - wget -nv -t 5 -O /opt/i3-data/photon-tables/splines/ems_mie_z20_a10.prob.fits http://prod-exe.icecube.wisc.edu/spline-tables/ems_mie_z20_a10.prob.fits - -# install baseline GCDs -RUN mkdir /opt/i3-data/baseline_gcds && \ - wget -nv -N -t 5 -P /opt/i3-data/baseline_gcds -r -l 1 -A *.i3* -nd https://icecube:skua@convey.icecube.wisc.edu/data/user/followup/baseline_gcds/ && \ - chmod -R u+rwX,go+rX,go-w /opt/i3-data/baseline_gcds - -# build the matplotlib font cache (prevents warnings about the font cache on startup) -RUN python3 -c 'from matplotlib import pyplot' - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/ubuntu20.04/combo/stable/Dockerfile_slim b/ubuntu20.04/combo/stable/Dockerfile_slim deleted file mode 100644 index d085f8b..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_slim +++ /dev/null @@ -1,21 +0,0 @@ -FROM icecube/icetray:combo-stable-base as slim - -MAINTAINER IceCube - -WORKDIR /root - -# stage in icetray -COPY --from=icecube/icetray:combo-stable-install /usr/local/icetray /usr/local/icetray -COPY --from=icecube/icetray:combo-stable-install /opt/i3-data /opt/i3-data - -# set environment variables -ENV I3_DATA /opt/i3-data -ENV I3_TESTDATA /opt/i3-data/i3-test-data -ENV TMPDIR /scratch - -# create the scratch directory -RUN mkdir -p /scratch - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"] diff --git a/ubuntu20.04/combo/stable/Dockerfile_tensorflow2.4.1 b/ubuntu20.04/combo/stable/Dockerfile_tensorflow2.4.1 deleted file mode 100644 index 3e59015..0000000 --- a/ubuntu20.04/combo/stable/Dockerfile_tensorflow2.4.1 +++ /dev/null @@ -1,38 +0,0 @@ -FROM icecube/icetray:combo-stable-install as install-tf - -# build NewNuFlux -RUN svn co http://code.icecube.wisc.edu/svn/sandbox/cweaver/NewNuFlux /root/combo/src/NewNuFlux \ - --username=icecube --password=skua --no-auth-cache - -WORKDIR /root/combo/build -RUN cmake /root/combo/src \ - -DCMAKE_BUILD_TYPE=Release \ - -DINSTALL_TOOL_LIBS=OFF \ - -DUSE_GFILT=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr/local/icetray \ - -DUSE_PYTHON3=OFF \ - && make -j4 - -# install icetray -RUN make install - -### now make the tensorflow image - -FROM icecube/icetray:combo-stable-cuda11.1 as tensorflow2.4.1 - -MAINTAINER IceCube - -WORKDIR /root - -# build tensorflow -RUN pip3 install tensorflow==2.4.1 - -# build pytorch -RUN pip3 install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html - -# stage in icetray from the previous build -COPY --from=install-tf /usr/local/icetray /usr/local/icetray - -# provide the entry point to run commands -ENTRYPOINT ["/bin/bash", "/usr/local/icetray/env-shell.sh", "exec"] -CMD ["/bin/bash"]