Преглед изворни кода

update `Dockerfile.build` for linux binary builds

Jeffrey Morgan пре 1 година
родитељ
комит
6f58c77671
1 измењених фајлова са 14 додато и 9 уклоњено
  1. 14 9
      Dockerfile.build

+ 14 - 9
Dockerfile.build

@@ -1,24 +1,29 @@
-
-# centos7 amd64 dependencies
-FROM --platform=linux/amd64 nvidia/cuda:11.8.0-devel-centos7 AS base-amd64
+# amd64 dependencies
+FROM --platform=linux/amd64 nvidia/cuda:11.3.1-devel-centos7 AS base-amd64
 RUN yum install -y https://repo.ius.io/ius-release-el7.rpm centos-release-scl && \
 RUN yum install -y https://repo.ius.io/ius-release-el7.rpm centos-release-scl && \
     yum update -y && \
     yum update -y && \
     yum install -y devtoolset-10-gcc devtoolset-10-gcc-c++ git236 wget
     yum install -y devtoolset-10-gcc devtoolset-10-gcc-c++ git236 wget
 RUN wget "https://github.com/Kitware/CMake/releases/download/v3.27.6/cmake-3.27.6-linux-x86_64.sh" -O cmake-installer.sh && chmod +x cmake-installer.sh && ./cmake-installer.sh --skip-license --prefix=/usr/local
 RUN wget "https://github.com/Kitware/CMake/releases/download/v3.27.6/cmake-3.27.6-linux-x86_64.sh" -O cmake-installer.sh && chmod +x cmake-installer.sh && ./cmake-installer.sh --skip-license --prefix=/usr/local
 ENV PATH /opt/rh/devtoolset-10/root/usr/bin:$PATH
 ENV PATH /opt/rh/devtoolset-10/root/usr/bin:$PATH
 
 
-# centos8 arm64 dependencies
-FROM --platform=linux/arm64 nvidia/cuda:11.4.3-devel-centos8 AS base-arm64
-RUN sed -i -e 's/mirrorlist/#mirrorlist/g' -e 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
-RUN yum install -y git cmake
+# arm64 dependencies
+FROM --platform=linux/arm64 nvidia/cuda:11.3.1-devel-ubuntu18.04 AS base-arm64
+RUN apt-get update && \
+    apt-get install -y git build-essential wget software-properties-common && \
+    add-apt-repository -y ppa:ubuntu-toolchain-r/test && \
+    apt-get update && \
+    apt-get install -y gcc-9 g++-9 && \
+    update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9 && \
+    update-alternatives --config gcc
+RUN wget "https://github.com/Kitware/CMake/releases/download/v3.27.6/cmake-3.27.6-linux-aarch64.sh" -O cmake-installer.sh && chmod +x cmake-installer.sh && ./cmake-installer.sh --skip-license --prefix=/usr/local
 
 
 FROM base-${TARGETARCH}
 FROM base-${TARGETARCH}
 ARG TARGETARCH
 ARG TARGETARCH
 ARG GOFLAGS="'-ldflags -w -s'"
 ARG GOFLAGS="'-ldflags -w -s'"
 
 
 # install go
 # install go
-ADD https://dl.google.com/go/go1.21.1.linux-$TARGETARCH.tar.gz /tmp/go1.21.1.tar.gz
-RUN mkdir -p /usr/local && tar xz -C /usr/local </tmp/go1.21.1.tar.gz
+ADD https://dl.google.com/go/go1.21.3.linux-$TARGETARCH.tar.gz /tmp/go1.21.3.tar.gz
+RUN mkdir -p /usr/local && tar xz -C /usr/local </tmp/go1.21.3.tar.gz
 
 
 # build the final binary
 # build the final binary
 WORKDIR /go/src/github.com/jmorganca/ollama
 WORKDIR /go/src/github.com/jmorganca/ollama