Dockerfile-arm64 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # YOLOv5 🚀 by Ultralytics, AGPL-3.0 license
  2. # Builds ultralytics/yolov5:latest-arm64 image on DockerHub https://hub.docker.com/r/ultralytics/yolov5
  3. # Image is aarch64-compatible for Apple M1 and other ARM architectures i.e. Jetson Nano and Raspberry Pi
  4. # Start FROM Ubuntu image https://hub.docker.com/_/ubuntu
  5. FROM arm64v8/ubuntu:22.10
  6. # Downloads to user config dir
  7. ADD https://ultralytics.com/assets/Arial.ttf https://ultralytics.com/assets/Arial.Unicode.ttf /root/.config/Ultralytics/
  8. # Install linux packages
  9. ENV DEBIAN_FRONTEND noninteractive
  10. RUN apt update
  11. RUN TZ=Etc/UTC apt install -y tzdata
  12. RUN apt install --no-install-recommends -y python3-pip git zip curl htop gcc libgl1-mesa-glx libglib2.0-0 libpython3-dev
  13. # RUN alias python=python3
  14. # Install pip packages
  15. COPY requirements.txt .
  16. RUN python3 -m pip install --upgrade pip wheel
  17. RUN pip install --no-cache -r requirements.txt albumentations gsutil notebook \
  18. coremltools onnx onnxruntime
  19. # tensorflow-aarch64 tensorflowjs \
  20. # Create working directory
  21. RUN mkdir -p /usr/src/app
  22. WORKDIR /usr/src/app
  23. # Copy contents
  24. # COPY . /usr/src/app (issues as not a .git directory)
  25. RUN git clone https://github.com/ultralytics/yolov5 /usr/src/app
  26. ENV DEBIAN_FRONTEND teletype
  27. # Usage Examples -------------------------------------------------------------------------------------------------------
  28. # Build and Push
  29. # t=ultralytics/yolov5:latest-arm64 && sudo docker build --platform linux/arm64 -f utils/docker/Dockerfile-arm64 -t $t . && sudo docker push $t
  30. # Pull and Run
  31. # t=ultralytics/yolov5:latest-arm64 && sudo docker pull $t && sudo docker run -it --ipc=host -v "$(pwd)"/datasets:/usr/src/datasets $t