From da9c3e9961b8f778be9f5d831d0aae8d9a15e399 Mon Sep 17 00:00:00 2001 From: sarthakpati Date: Wed, 12 Jul 2023 14:34:33 -0400 Subject: [PATCH 01/24] added docker workflow --- .github/workflows/docker-image.yml | 136 +++++++++++++++++++++++++++++ 1 file changed, 136 insertions(+) create mode 100644 .github/workflows/docker-image.yml diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml new file mode 100644 index 00000000..8c289fb6 --- /dev/null +++ b/.github/workflows/docker-image.yml @@ -0,0 +1,136 @@ +name: Docker Image CI + +on: + push: + branches: [ master ] + tags: [ '*.*.*' ] + pull_request: + branches: [ master ] + workflow_dispatch: + inputs: + versionTag: + description: 'Version tag to push to Docker Hub (lowercase, alphanumeric)' + required: true + type: string + +jobs: + + build_test_push: + runs-on: ubuntu-latest + strategy: + fail-fast: false # So that remaining jobs don't instantly quit if one fails (e.g, CPU/ROCm don't upload if CUDA just fails to push to ghcr...) + # matrix: + # include: # Platform locates Dockerfile ("Dockerfile-{PLATFORM}"), docker tag has to be all lowercase alphanumeric for mysterious docker reasons + # - platform: CPU + # dockertag: cpu + # - platform: ROCm + # dockertag: rocm + + steps: + - name: Check out the repository + uses: actions/checkout@v3 + # with: + # lfs: false + # submodules: 'recursive' + + # - name: Check if the repository has changed + # run: ls -l + + - name: Docker prune to save space # If you switch to self-hosted runners, this should be removed. + run: echo y | docker system prune -a + + # Install the cosign tool except on PR + # https://github.com/sigstore/cosign-installer + - name: Install cosign + if: github.event_name != 'pull_request' + uses: sigstore/cosign-installer@1e95c1de343b5b0c23352d6417ee3e48d5bcd422 + with: + cosign-release: 'v1.4.0' + + - name: Log into GitHub Packages registry (ghcr.io) + if: github.event_name != 'pull_request' + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + # Extract metadata (tags, labels) for Docker + # https://github.com/docker/metadata-action + - name: Extract Docker metadata + id: meta + uses: docker/metadata-action@v4 + with: + images: ghcr.io/fets-ai/front-end + flavor: | # Handle prefixing and "latest" generation -- use "tags" property to specify events/tags further + latest=true + tags: | + type=semver,pattern={{version}} + type=ref,event=branch + type=ref,event=pr + type=ref,event=tag + + # Build Docker Image (but don't push yet -- wait for the test step first). + # https://github.com/docker/build-push-action + - name: Build Docker images + id: build + uses: docker/build-push-action@v4 + with: + context: . + # cache-from: type=local,src=${{ github.workspace }} + # build-args: --mount 'type=bind,src=${{ github.workspace }},target=/Front-End,readwrite' #-v ${{ github.workspace }}:/Front-End + file: ./Dockerfile + push: false + load: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + + # - uses: addnab/docker-run-action@v3 + # with: + # username: ${{ github.actor }} + # password: ${{ secrets.GITHUB_TOKEN }} + # registry: ghcr.io + # image: ghcr.io/fets-ai/front-end:latest + # options: -v ${{ github.workspace }}:/Front-End + # run: | + # echo "Running Script" + # /work/run-script + # - name: Build the Docker image + # run: docker build . -v /Front-End:/home/runner/work/Front-End/Front-End/ --file Dockerfile --tag ${{ steps.meta.outputs.tags }} + + + # Run the image from the base entrypoint as a test + - name: Test container with entrypoint + # Run a tag we generated from the metadata extraction above -- they're all the same image, but echo it regardless just so we know. + run: docker run --rm ghcr.io/fets-ai/front-end:latest -h + + # Push Docker image with Buildx (but don't push on PR) + # https://github.com/docker/build-push-action + # This won't re-build the images fully or anything, they should already exist from the build step and use the cache. + - name: Upload to Docker Hub (docker.io) and GitHub Packages (ghcr.io) + id: upload + if: github.event_name != 'pull_request' + uses: docker/build-push-action@v4 + with: + context: . + file: ./Dockerfile + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + + # Below is for signing images (keyless) with cosign. But this adds confusing sha256-digest.sig tags to the container registry. + # Leave this commented if container signing is not required. + # # Sign the resulting Docker image digest except on PRs. + # # Uses cosign keyless signing: https://github.com/sigstore/cosign/blob/main/KEYLESS.md + # # This will only write to the public Rekor transparency log when the Docker + # # repository is public to avoid leaking data. If you would like to publish + # # transparency data even for private images, pass --force to cosign below. + # # https://github.com/sigstore/cosign + #- name: Sign published Docker image (ghcr.io) + # if: ${{ github.event_name != 'pull_request' }} + # env: + # COSIGN_EXPERIMENTAL: "true" + # # This step uses the identity token to provision an ephemeral certificate + # # against the sigstore community Fulcio instance. + # run: cosign sign ghcr.io/fets-ai/front-end@${{ steps.upload.outputs.digest }} + From e48e2ef2753efdeaac64eea2d3c7408c85bc834f Mon Sep 17 00:00:00 2001 From: sarthakpati Date: Wed, 12 Jul 2023 14:43:51 -0400 Subject: [PATCH 02/24] added paths and updating $PATH AND $LD_LIBRARY_PATH --- Dockerfile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index c2339f6b..e4ab629f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,12 +20,15 @@ RUN wget https://fets.projects.nitrc.org/FeTS_${VERSION}_Installer.bin && chmod # install FeTS and remove installer RUN yes yes | ./FeTS_${VERSION}_Installer.bin --target ./FeTS_${VERSION} -- --cudaVersion 11 && rm -rf ./FeTS_${VERSION}_Installer.bin +ENV PATH=./FeTS_${VERSION}/squashfs-root/usr/bin/:$PATH +ENV LD_LIBRARY_PATH=./FeTS_${VERSION}/squashfs-root/usr/lib/:$LD_LIBRARY_PATH + # set up environment and install correct version of pytorch -RUN cd FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ +RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ rm -rf ./venv && python3.7 -m venv ./venv && \ ./venv/bin/pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html -RUN cd FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ +RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install wheel && \ ./venv/bin/pip install scikit-build && \ ./venv/bin/pip install SimpleITK==1.2.4 && \ @@ -33,7 +36,7 @@ RUN cd FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install opencv-python==4.2.0.34 && \ ./venv/bin/pip install python-gdcm -RUN cd FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ +RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install setuptools --upgrade && \ make install_openfl && \ make install_fets && \ From 01663f8114499d0770bbce85502163863b01769c Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 15:00:12 -0400 Subject: [PATCH 03/24] added cython installation --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index e4ab629f..c11ae696 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,7 +25,7 @@ ENV LD_LIBRARY_PATH=./FeTS_${VERSION}/squashfs-root/usr/lib/:$LD_LIBRARY_PATH # set up environment and install correct version of pytorch RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ - rm -rf ./venv && python3.7 -m venv ./venv && \ + rm -rf ./venv && python3.7 -m venv ./venv && ./venv/bin/pip install Cython && \ ./venv/bin/pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ From 5e0b9a9efed0588f1c93f3da52ddcde4fa315af6 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 18:12:35 -0400 Subject: [PATCH 04/24] trying to save space --- .github/workflows/docker-image.yml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 8c289fb6..cf629142 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -38,7 +38,27 @@ jobs: - name: Docker prune to save space # If you switch to self-hosted runners, this should be removed. run: echo y | docker system prune -a - + + - name: Check free space + run: | + echo "Free space:" + df -h + + - name: Maximize build space + uses: easimon/maximize-build-space@master + with: + root-reserve-mb: 256 + remove-dotnet: 'true' + remove-android: 'true' + remove-haskell: 'true' + remove-codeql: 'true' + remove-docker-images: 'true' + + - name: Check free space + run: | + echo "Free space:" + df -h + # Install the cosign tool except on PR # https://github.com/sigstore/cosign-installer - name: Install cosign From 924cfca03ced8290591ddb5f4e48c8d787260801 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 18:18:01 -0400 Subject: [PATCH 05/24] Update docker-image.yml --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index cf629142..09fb8ac8 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -52,7 +52,7 @@ jobs: remove-android: 'true' remove-haskell: 'true' remove-codeql: 'true' - remove-docker-images: 'true' + # remove-docker-images: 'true' # this causes the workflow to not find the required image - name: Check free space run: | From ebf492eabd0454d452eff2f90cd24770635a0fb3 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 18:33:43 -0400 Subject: [PATCH 06/24] trying codeql next --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 09fb8ac8..903e3c8f 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -51,7 +51,7 @@ jobs: remove-dotnet: 'true' remove-android: 'true' remove-haskell: 'true' - remove-codeql: 'true' + # remove-codeql: 'true' # remove-docker-images: 'true' # this causes the workflow to not find the required image - name: Check free space From 5f34b400275697e493a1337c5aa693c5b0aceded Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 18:42:37 -0400 Subject: [PATCH 07/24] Update docker-image.yml --- .github/workflows/docker-image.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 903e3c8f..7b6ce1a5 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -48,9 +48,9 @@ jobs: uses: easimon/maximize-build-space@master with: root-reserve-mb: 256 - remove-dotnet: 'true' - remove-android: 'true' - remove-haskell: 'true' + # remove-dotnet: 'true' + # remove-android: 'true' + # remove-haskell: 'true' # remove-codeql: 'true' # remove-docker-images: 'true' # this causes the workflow to not find the required image From c9ab2d52f87cb183361254ea1c93e76f9ddda387 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 18:45:43 -0400 Subject: [PATCH 08/24] updated reserve --- .github/workflows/docker-image.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 7b6ce1a5..dac081e5 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -39,20 +39,20 @@ jobs: - name: Docker prune to save space # If you switch to self-hosted runners, this should be removed. run: echo y | docker system prune -a - - name: Check free space - run: | - echo "Free space:" - df -h + # - name: Check free space + # run: | + # echo "Free space:" + # df -h - name: Maximize build space uses: easimon/maximize-build-space@master with: - root-reserve-mb: 256 - # remove-dotnet: 'true' - # remove-android: 'true' - # remove-haskell: 'true' - # remove-codeql: 'true' - # remove-docker-images: 'true' # this causes the workflow to not find the required image + root-reserve-mb: 50000 + remove-dotnet: 'true' + remove-android: 'true' + remove-haskell: 'true' + remove-codeql: 'true' + remove-docker-images: 'true' # this causes the workflow to not find the required image - name: Check free space run: | From 9223019edfc0e828edfb782d1931db95d56153e9 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 18:52:17 -0400 Subject: [PATCH 09/24] trying another action --- .github/workflows/docker-image.yml | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index dac081e5..babc8648 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -44,15 +44,13 @@ jobs: # echo "Free space:" # df -h - - name: Maximize build space - uses: easimon/maximize-build-space@master + - name: Free Disk Space (Ubuntu) + uses: jlumbroso/free-disk-space@main with: - root-reserve-mb: 50000 - remove-dotnet: 'true' - remove-android: 'true' - remove-haskell: 'true' - remove-codeql: 'true' - remove-docker-images: 'true' # this causes the workflow to not find the required image + # this might remove tools that are actually needed, + # if set to "true" but frees about 6 GB + tool-cache: false + docker-images: false - name: Check free space run: | From 2e982e8c9fb32bec03997f0b181549514b97081f Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 18:56:47 -0400 Subject: [PATCH 10/24] manual deletion of android and .net --- .github/workflows/docker-image.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index babc8648..c2073e02 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -45,12 +45,9 @@ jobs: # df -h - 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 - docker-images: false + run: | + sudo rm -rf /usr/local/lib/android + sudo rm -rf /usr/share/dotnet - name: Check free space run: | From b4f315a456d580ed7aafed590c63a2ebe2229e69 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 19:01:32 -0400 Subject: [PATCH 11/24] Update docker-image.yml --- .github/workflows/docker-image.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index c2073e02..1b8fa13f 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -39,17 +39,17 @@ jobs: - name: Docker prune to save space # If you switch to self-hosted runners, this should be removed. run: echo y | docker system prune -a - # - name: Check free space - # run: | - # echo "Free space:" - # df -h + - name: Check free space before + run: | + echo "Free space:" + df -h - name: Free Disk Space (Ubuntu) run: | sudo rm -rf /usr/local/lib/android sudo rm -rf /usr/share/dotnet - - name: Check free space + - name: Check free space after run: | echo "Free space:" df -h From 824c753479500075fa6120660e12c68bbfe01dae Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 19:30:37 -0400 Subject: [PATCH 12/24] gdcm was not working --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index c11ae696..6eaebe96 100644 --- a/Dockerfile +++ b/Dockerfile @@ -33,8 +33,8 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install scikit-build && \ ./venv/bin/pip install SimpleITK==1.2.4 && \ ./venv/bin/pip install protobuf==3.17.3 && \ - ./venv/bin/pip install opencv-python==4.2.0.34 && \ - ./venv/bin/pip install python-gdcm + ./venv/bin/pip install opencv-python==4.2.0.34 + # ./venv/bin/pip install python-gdcm RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install setuptools --upgrade && \ From da32f7be8e71c703c76f026a3ece15c54a887c14 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 21:28:18 -0400 Subject: [PATCH 13/24] updating setuptools --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index 6eaebe96..f571af86 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,6 +26,7 @@ ENV LD_LIBRARY_PATH=./FeTS_${VERSION}/squashfs-root/usr/lib/:$LD_LIBRARY_PATH # set up environment and install correct version of pytorch RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ rm -rf ./venv && python3.7 -m venv ./venv && ./venv/bin/pip install Cython && \ + ./venv/bin/pip install --upgrade pip setuptools wheel && \ ./venv/bin/pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ From 3a81e732e5a403149d2ef57e73ad5bf533955581 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 23:09:14 -0400 Subject: [PATCH 14/24] Update Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index f571af86..67e964cd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,7 +26,7 @@ ENV LD_LIBRARY_PATH=./FeTS_${VERSION}/squashfs-root/usr/lib/:$LD_LIBRARY_PATH # set up environment and install correct version of pytorch RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ rm -rf ./venv && python3.7 -m venv ./venv && ./venv/bin/pip install Cython && \ - ./venv/bin/pip install --upgrade pip setuptools wheel && \ + ./venv/bin/pip install --upgrade pip setuptools wheel setuptools-rust && \ ./venv/bin/pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ From f5f6e99dea25195b45e79ed685b9ac3460cb6248 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Wed, 12 Jul 2023 23:42:41 -0400 Subject: [PATCH 15/24] ensure same base env for both --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index 67e964cd..35162678 100644 --- a/Dockerfile +++ b/Dockerfile @@ -44,6 +44,7 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install -e ./submodules/fets_ai/Algorithms/GANDLF && \ cd ../LabelFusion && \ rm -rf venv && python3.7 -m venv ./venv && \ + ./venv/bin/pip install --upgrade pip setuptools wheel setuptools-rust && \ ./venv/bin/pip install -e . # set up the docker for GUI From d61c082ffa89e1d60090f2e1c9b105018449eb74 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 00:04:49 -0400 Subject: [PATCH 16/24] trying install for `scikit-learn` --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 35162678..9128b43b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -31,7 +31,7 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install wheel && \ - ./venv/bin/pip install scikit-build && \ + ./venv/bin/pip install scikit-build scikit-learn && \ ./venv/bin/pip install SimpleITK==1.2.4 && \ ./venv/bin/pip install protobuf==3.17.3 && \ ./venv/bin/pip install opencv-python==4.2.0.34 From 82495a75033125b59285826b103141eb2569337c Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 09:13:51 -0400 Subject: [PATCH 17/24] installing specific version of grpcio and updated entry path --- Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 9128b43b..e91b3669 100644 --- a/Dockerfile +++ b/Dockerfile @@ -33,7 +33,7 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ./venv/bin/pip install wheel && \ ./venv/bin/pip install scikit-build scikit-learn && \ ./venv/bin/pip install SimpleITK==1.2.4 && \ - ./venv/bin/pip install protobuf==3.17.3 && \ + ./venv/bin/pip install protobuf==3.17.3 grpcio==1.30.0 && \ ./venv/bin/pip install opencv-python==4.2.0.34 # ./venv/bin/pip install python-gdcm @@ -51,5 +51,6 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ENV QT_X11_NO_MITSHM=1 ENV QT_GRAPHICSSYSTEM="native" +RUN ls -l ./FeTS_${VERSION}/squashfs-root/usr/bin # define entry point -ENTRYPOINT ["/FeTS_\${VERSION}/bin/install/appdir/usr/bin/FeTS_CLI_Inference"] +ENTRYPOINT ["./FeTS_\${VERSION}/squashfs-root/usr/bin/FeTS_CLI_Inference"] From 84627ec618773c909557be9f695ef56c5e588c1c Mon Sep 17 00:00:00 2001 From: sarthakpati Date: Thu, 13 Jul 2023 09:40:03 -0400 Subject: [PATCH 18/24] updated hash --- OpenFederatedLearning | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenFederatedLearning b/OpenFederatedLearning index 3778c1c2..9ae9c34a 160000 --- a/OpenFederatedLearning +++ b/OpenFederatedLearning @@ -1 +1 @@ -Subproject commit 3778c1c23a15f8fba679e9524e2f7277db825ece +Subproject commit 9ae9c34a4db59e6c49b60aae7ce2757545dcdaee From 7a907127b0fb2138a1658b5ed1b525c02076430a Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 10:53:41 -0400 Subject: [PATCH 19/24] syntax fix --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index e91b3669..b0d7e9c5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -53,4 +53,4 @@ ENV QT_GRAPHICSSYSTEM="native" RUN ls -l ./FeTS_${VERSION}/squashfs-root/usr/bin # define entry point -ENTRYPOINT ["./FeTS_\${VERSION}/squashfs-root/usr/bin/FeTS_CLI_Inference"] +ENTRYPOINT ["./FeTS_${VERSION}/squashfs-root/usr/bin/FeTS_CLI_Inference"] From 2992e4ca03b9819b361fba3cb2eb607866ddeda7 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 11:25:05 -0400 Subject: [PATCH 20/24] checking path --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index b0d7e9c5..b9979bd7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -51,6 +51,6 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ENV QT_X11_NO_MITSHM=1 ENV QT_GRAPHICSSYSTEM="native" -RUN ls -l ./FeTS_${VERSION}/squashfs-root/usr/bin +RUN ls -l /FeTS_${VERSION}/squashfs-root/usr/bin && echo "pwd:" && pwd # define entry point -ENTRYPOINT ["./FeTS_${VERSION}/squashfs-root/usr/bin/FeTS_CLI_Inference"] +ENTRYPOINT ["/FeTS_${VERSION}/squashfs-root/usr/bin/FeTS_CLI_Inference"] From 5d4df9eaa2b27e3099094abafb63cd9630a860f1 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 11:56:20 -0400 Subject: [PATCH 21/24] checking path --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index b9979bd7..f7822bb8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -51,6 +51,6 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ENV QT_X11_NO_MITSHM=1 ENV QT_GRAPHICSSYSTEM="native" -RUN ls -l /FeTS_${VERSION}/squashfs-root/usr/bin && echo "pwd:" && pwd +RUN ls -l ./FeTS_${VERSION}/squashfs-root/usr/bin && cd ./FeTS_${VERSION}/squashfs-root/usr/bin && echo "pwd:" && pwd # define entry point ENTRYPOINT ["/FeTS_${VERSION}/squashfs-root/usr/bin/FeTS_CLI_Inference"] From 73deb1b9e026fcd2509f4904aeeb4f3c489ed0f4 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 12:53:15 -0400 Subject: [PATCH 22/24] fixed path --- Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index f7822bb8..c0c4be85 100644 --- a/Dockerfile +++ b/Dockerfile @@ -51,6 +51,5 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ENV QT_X11_NO_MITSHM=1 ENV QT_GRAPHICSSYSTEM="native" -RUN ls -l ./FeTS_${VERSION}/squashfs-root/usr/bin && cd ./FeTS_${VERSION}/squashfs-root/usr/bin && echo "pwd:" && pwd # define entry point -ENTRYPOINT ["/FeTS_${VERSION}/squashfs-root/usr/bin/FeTS_CLI_Inference"] +ENTRYPOINT ["/workspace/FeTS_0.0.9/squashfs-root/usr/bin/FeTS_CLI_Inference"] From b8d49a26cdffb0f960d1df10280d94aba0f436d4 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 14:41:19 -0400 Subject: [PATCH 23/24] ensure that libGL is found --- Dockerfile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index c0c4be85..acda2ee8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,7 +6,7 @@ RUN apt-get update -y RUN apt-get install wget zip unzip software-properties-common gcc g++ make -y -RUN apt-get update -y && add-apt-repository ppa:deadsnakes/ppa && apt update -y && apt install python3.7 python3.7-venv python3.7-dev python3-setuptools -y +RUN apt-get update -y && add-apt-repository ppa:deadsnakes/ppa && apt update -y && apt install python3.7 python3.7-venv python3.7-dev python3-setuptools ffmpeg libsm6 libxext6 -y # We will do git pull on the FeTS_Front-End master, because that is the repo using which the base image is made # We will not do compiles on the PR because the idea is that the Xenial build will check the build status of @@ -20,8 +20,8 @@ RUN wget https://fets.projects.nitrc.org/FeTS_${VERSION}_Installer.bin && chmod # install FeTS and remove installer RUN yes yes | ./FeTS_${VERSION}_Installer.bin --target ./FeTS_${VERSION} -- --cudaVersion 11 && rm -rf ./FeTS_${VERSION}_Installer.bin -ENV PATH=./FeTS_${VERSION}/squashfs-root/usr/bin/:$PATH -ENV LD_LIBRARY_PATH=./FeTS_${VERSION}/squashfs-root/usr/lib/:$LD_LIBRARY_PATH +ENV PATH=/workspace/FeTS_${VERSION}/squashfs-root/usr/bin/:$PATH +ENV LD_LIBRARY_PATH=/workspace/FeTS_${VERSION}/squashfs-root/usr/lib/:$LD_LIBRARY_PATH # set up environment and install correct version of pytorch RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ @@ -51,5 +51,7 @@ RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \ ENV QT_X11_NO_MITSHM=1 ENV QT_GRAPHICSSYSTEM="native" +RUN echo "Env paths\n" && echo $PATH && echo $LD_LIBRARY_PATH + # define entry point ENTRYPOINT ["/workspace/FeTS_0.0.9/squashfs-root/usr/bin/FeTS_CLI_Inference"] From 794885895e5bcdb2915f9e70db406c5c275c3646 Mon Sep 17 00:00:00 2001 From: Sarthak Pati Date: Thu, 13 Jul 2023 17:29:33 -0400 Subject: [PATCH 24/24] trying sklearn deprecated flag --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index acda2ee8..5c60666e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,6 +22,7 @@ RUN yes yes | ./FeTS_${VERSION}_Installer.bin --target ./FeTS_${VERSION} -- --cu ENV PATH=/workspace/FeTS_${VERSION}/squashfs-root/usr/bin/:$PATH ENV LD_LIBRARY_PATH=/workspace/FeTS_${VERSION}/squashfs-root/usr/lib/:$LD_LIBRARY_PATH +ENV SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL="True" # set up environment and install correct version of pytorch RUN cd ./FeTS_${VERSION}/squashfs-root/usr/bin/OpenFederatedLearning && \