From babe34c54c88b51cf8e67e3529cd53af3c706498 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 17 May 2022 13:02:06 +0200 Subject: [PATCH 01/10] Create docker.yml --- .github/workflows/docker.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/docker.yml diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml new file mode 100644 index 000000000000..8cbef9fb24a8 --- /dev/null +++ b/.github/workflows/docker.yml @@ -0,0 +1,30 @@ +# YOLOv5 🚀 by Ultralytics, GPL-3.0 license + +name: Publish Docker Image + +on: + push: + branches: + - 'master' + +jobs: + docker: + name: Push Docker image to Docker Hub + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build and push Docker image + uses: docker/build-push-action@v2 + with: + context: . + file: utils/docker/Dockerfile-cpu + push: true + tags: ultralytics/yolov5:latest-cpu-pr From 7f47e100064470f32df97ab752f0686042d2b041 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 17 May 2022 11:02:30 +0000 Subject: [PATCH 02/10] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .github/workflows/docker.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 8cbef9fb24a8..8bac2578d359 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -14,13 +14,13 @@ jobs: steps: - name: Checkout repo uses: actions/checkout@v3 - + - name: Login to Docker Hub uses: docker/login-action@v2 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - + - name: Build and push Docker image uses: docker/build-push-action@v2 with: From 978b29821c3cafb6378ad17b9fbb7dd4d01e5a0e Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 17 May 2022 13:05:35 +0200 Subject: [PATCH 03/10] Update docker.yml --- .github/workflows/docker.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 8bac2578d359..fb76b8643c9b 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -4,8 +4,9 @@ name: Publish Docker Image on: push: - branches: - - 'master' + branches: master + pull_request: + branches: master jobs: docker: @@ -14,13 +15,13 @@ jobs: steps: - name: Checkout repo uses: actions/checkout@v3 - + - name: Login to Docker Hub uses: docker/login-action@v2 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - + - name: Build and push Docker image uses: docker/build-push-action@v2 with: From a54ca1452db728f24c7b02eff894bbbc63ac40cb Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 17 May 2022 11:05:50 +0000 Subject: [PATCH 04/10] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .github/workflows/docker.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index fb76b8643c9b..91285eb0be4e 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -15,13 +15,13 @@ jobs: steps: - name: Checkout repo uses: actions/checkout@v3 - + - name: Login to Docker Hub uses: docker/login-action@v2 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - + - name: Build and push Docker image uses: docker/build-push-action@v2 with: From 3b0513148451fc2fff81384681ed721b4def6cac Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 17 May 2022 13:15:40 +0200 Subject: [PATCH 05/10] Update docker.yml --- .github/workflows/docker.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 91285eb0be4e..9930007439ca 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -22,7 +22,16 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Build and push Docker image + - name: Build and push Docker-M1 image + uses: docker/build-push-action@v2 + with: + context: . + platform: linux/arm64 + file: utils/docker/Dockerfile-M1 + push: true + tags: ultralytics/yolov5:latest-M1-pr + + - name: Build and push Docker-cpu image uses: docker/build-push-action@v2 with: context: . From 782236c8a898acbcb1e5656f63935b80fb561b12 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 17 May 2022 13:24:07 +0200 Subject: [PATCH 06/10] Update docker.yml --- .github/workflows/docker.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 9930007439ca..a1aa46345d40 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -15,6 +15,12 @@ jobs: steps: - name: Checkout repo uses: actions/checkout@v3 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 - name: Login to Docker Hub uses: docker/login-action@v2 @@ -23,16 +29,16 @@ jobs: password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push Docker-M1 image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v3 with: context: . - platform: linux/arm64 + platforms: linux/arm64 file: utils/docker/Dockerfile-M1 push: true tags: ultralytics/yolov5:latest-M1-pr - name: Build and push Docker-cpu image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v3 with: context: . file: utils/docker/Dockerfile-cpu From 1e1c2a5dcdc487bba5ceda39ced4148537ab1760 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 17 May 2022 11:25:59 +0000 Subject: [PATCH 07/10] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .github/workflows/docker.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index a1aa46345d40..7be29997afd5 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -15,10 +15,10 @@ jobs: steps: - name: Checkout repo uses: actions/checkout@v3 - + - name: Set up QEMU uses: docker/setup-qemu-action@v2 - + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 From ce28ebc0654a69826ebbc621eb8256b310c5e277 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 17 May 2022 13:36:59 +0200 Subject: [PATCH 08/10] Cleanup --- .github/workflows/docker.yml | 24 ++++++++++++++++-------- utils/docker/Dockerfile | 2 +- utils/docker/Dockerfile-cpu | 2 +- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 7be29997afd5..9e8e025ddd5b 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -1,6 +1,6 @@ # YOLOv5 🚀 by Ultralytics, GPL-3.0 license -name: Publish Docker Image +name: Publish Docker Images on: push: @@ -28,19 +28,27 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Build and push Docker-M1 image + #- name: Build and push M1/aarch64 image + # uses: docker/build-push-action@v3 + # with: + # context: . + # platforms: linux/arm64 + # file: utils/docker/Dockerfile-M1 + # push: true + # tags: ultralytics/yolov5:latest-M1-pr + + - name: Build and push CPU image uses: docker/build-push-action@v3 with: context: . - platforms: linux/arm64 - file: utils/docker/Dockerfile-M1 + file: utils/docker/Dockerfile-cpu push: true - tags: ultralytics/yolov5:latest-M1-pr + tags: ultralytics/yolov5:latest-cpu-pr - - name: Build and push Docker-cpu image + - name: Build and push GPU image uses: docker/build-push-action@v3 with: context: . - file: utils/docker/Dockerfile-cpu + file: utils/docker/Dockerfile push: true - tags: ultralytics/yolov5:latest-cpu-pr + tags: ultralytics/yolov5:latest-pr diff --git a/utils/docker/Dockerfile b/utils/docker/Dockerfile index 654601e26976..7c1e5e8f7bee 100644 --- a/utils/docker/Dockerfile +++ b/utils/docker/Dockerfile @@ -15,7 +15,7 @@ COPY requirements.txt . RUN python -m pip install --upgrade pip RUN pip uninstall -y torch torchvision torchtext Pillow RUN pip install --no-cache -r requirements.txt albumentations wandb gsutil notebook Pillow>=9.1.0 \ - torch torchvision --extra-index-url https://download.pytorch.org/whl/cu113 + --extra-index-url https://download.pytorch.org/whl/cu113 # Create working directory RUN mkdir -p /usr/src/app diff --git a/utils/docker/Dockerfile-cpu b/utils/docker/Dockerfile-cpu index 131be2b7a22e..e77ceb68990a 100644 --- a/utils/docker/Dockerfile-cpu +++ b/utils/docker/Dockerfile-cpu @@ -17,7 +17,7 @@ COPY requirements.txt . RUN python3 -m pip install --upgrade pip RUN pip install --no-cache -r requirements.txt albumentations gsutil notebook \ coremltools onnx onnx-simplifier onnxruntime openvino-dev tensorflow-cpu tensorflowjs \ - torch torchvision --extra-index-url https://download.pytorch.org/whl/cpu + --extra-index-url https://download.pytorch.org/whl/cpu # Create working directory RUN mkdir -p /usr/src/app From 36b912032ea06932e8eca8a2101787b04e0a5d1b Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 17 May 2022 14:10:24 +0200 Subject: [PATCH 09/10] Cleanup2 --- .github/workflows/docker.yml | 28 +++++++++---------- .../{Dockerfile-M1 => Dockerfile-arm64} | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) rename utils/docker/{Dockerfile-M1 => Dockerfile-arm64} (94%) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 9e8e025ddd5b..dcb888617a5e 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -4,9 +4,9 @@ name: Publish Docker Images on: push: - branches: master - pull_request: - branches: master + branches: [master] + # pull_request: + # branches: [master] jobs: docker: @@ -28,22 +28,13 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - #- name: Build and push M1/aarch64 image - # uses: docker/build-push-action@v3 - # with: - # context: . - # platforms: linux/arm64 - # file: utils/docker/Dockerfile-M1 - # push: true - # tags: ultralytics/yolov5:latest-M1-pr - - name: Build and push CPU image uses: docker/build-push-action@v3 with: context: . file: utils/docker/Dockerfile-cpu push: true - tags: ultralytics/yolov5:latest-cpu-pr + tags: ultralytics/yolov5:latest-cpu - name: Build and push GPU image uses: docker/build-push-action@v3 @@ -51,4 +42,13 @@ jobs: context: . file: utils/docker/Dockerfile push: true - tags: ultralytics/yolov5:latest-pr + tags: ultralytics/yolov5:latest + + #- name: Build and push arm64 image + # uses: docker/build-push-action@v3 + # with: + # context: . + # platforms: linux/arm64 + # file: utils/docker/Dockerfile-arm64 + # push: true + # tags: ultralytics/yolov5:latest-arm64 \ No newline at end of file diff --git a/utils/docker/Dockerfile-M1 b/utils/docker/Dockerfile-arm64 similarity index 94% rename from utils/docker/Dockerfile-M1 rename to utils/docker/Dockerfile-arm64 index 4efb749afbc5..64a3182169f1 100644 --- a/utils/docker/Dockerfile-M1 +++ b/utils/docker/Dockerfile-arm64 @@ -34,7 +34,7 @@ RUN git clone https://github.com/ultralytics/yolov5 /usr/src/yolov5 # Usage Examples ------------------------------------------------------------------------------------------------------- # Build and Push -# t=ultralytics/yolov5:latest-M1 && sudo docker build --platform linux/arm64 -f utils/docker/Dockerfile-M1 -t $t . && sudo docker push $t +# t=ultralytics/yolov5:latest-M1 && sudo docker build --platform linux/arm64 -f utils/docker/Dockerfile-arm64 -t $t . && sudo docker push $t # Pull and Run # t=ultralytics/yolov5:latest-M1 && sudo docker pull $t && sudo docker run -it --ipc=host -v "$(pwd)"/datasets:/usr/src/datasets $t From 18be01400b990002516f8fd484439c0089f2207b Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 17 May 2022 12:10:55 +0000 Subject: [PATCH 10/10] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .github/workflows/docker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index dcb888617a5e..ea0e2e953adc 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -51,4 +51,4 @@ jobs: # platforms: linux/arm64 # file: utils/docker/Dockerfile-arm64 # push: true - # tags: ultralytics/yolov5:latest-arm64 \ No newline at end of file + # tags: ultralytics/yolov5:latest-arm64