mirror of
https://github.com/elastic/eland.git
synced 2025-07-11 00:02:14 +08:00
Co-authored-by: David Olaru <dolaru@elastic.co> * Reduce Docker image size from 4.8GB to 2.2GB * Use torch+cpu variant if target platform is linux/amd64 Avoids downloading large & unnecessary NVIDIA deps defined in the package on PyPI * Build linux/arm64 image using buildx and QEMU
29 lines
775 B
Docker
29 lines
775 B
Docker
# syntax=docker/dockerfile:1
|
|
FROM python:3.10-slim
|
|
|
|
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
|
|
--mount=type=cache,target=/var/lib/apt,sharing=locked \
|
|
apt-get update && apt-get install -y \
|
|
build-essential \
|
|
pkg-config \
|
|
cmake \
|
|
libzip-dev \
|
|
libjpeg-dev
|
|
|
|
ADD . /eland
|
|
WORKDIR /eland
|
|
|
|
ARG TARGETPLATFORM
|
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
|
if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \
|
|
python3 -m pip install \
|
|
--no-cache-dir --disable-pip-version-check --extra-index-url https://download.pytorch.org/whl/cpu \
|
|
torch==1.13.1+cpu .[all]; \
|
|
else \
|
|
python3 -m pip install \
|
|
--no-cache-dir --disable-pip-version-check \
|
|
.[all]; \
|
|
fi
|
|
|
|
CMD ["/bin/sh"]
|