mirror of
https://github.com/BillyOutlast/rocm-automated.git
synced 2026-02-04 03:51:19 +01:00
REVERTED BACK TO OLDER OLLAMA BUILD METHOD
This commit is contained in:
@@ -1,13 +1,72 @@
|
||||
FROM docker.io/getterup/fedora-rocm7.1:latest
|
||||
# vim: filetype=dockerfile
|
||||
|
||||
# Copy built ollama binary and libraries from build output
|
||||
COPY ./ollama-build/ollama-build-output/bin/ollama /usr/bin/ollama
|
||||
COPY ./ollama-build/ollama-build-output/lib/ollama /usr/lib/ollama
|
||||
RUN <<'EOF'
|
||||
tee /etc/yum.repos.d/rocm.repo <<REPO
|
||||
[ROCm-7.1]
|
||||
name=ROCm7.1
|
||||
baseurl=https://repo.radeon.com/rocm/el9/7.1/main
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
REPO
|
||||
EOF
|
||||
|
||||
RUN dnf -y --nodocs --setopt=install_weak_deps=False \
|
||||
--exclude='*sdk*' --exclude='*samples*' --exclude='*-doc*' --exclude='*-docs*' \
|
||||
install \
|
||||
rocm-runtime rocm-device-libs hip-runtime-amd \
|
||||
rocblas hipblas rocminfo \
|
||||
ca-certificates \
|
||||
&& dnf clean all && rm -rf /var/cache/dnf/*
|
||||
|
||||
# ROCm environment variables
|
||||
ENV ROCM_PATH=/opt/rocm \
|
||||
HIP_PATH=/opt/rocm \
|
||||
HIP_CLANG_PATH=/opt/rocm/llvm/bin \
|
||||
HIP_DEVICE_LIB_PATH=/opt/rocm/amdgcn/bitcode \
|
||||
PATH=/opt/rocm/bin:/opt/rocm/llvm/bin:$PATH
|
||||
|
||||
ARG FLAVOR=rocm
|
||||
ARG PARALLEL=8
|
||||
|
||||
ARG ROCM7VERSION=7.1
|
||||
ARG CMAKEVERSION=3.31.2
|
||||
|
||||
COPY ./ollama-build/ollama-src /ollama-src
|
||||
|
||||
ARG CMAKEVERSION
|
||||
RUN curl -fsSL https://github.com/Kitware/CMake/releases/download/v${CMAKEVERSION}/cmake-${CMAKEVERSION}-linux-$(uname -m).tar.gz | tar xz -C /usr/local --strip-components 1
|
||||
ENV LDFLAGS=-s
|
||||
|
||||
ENV PATH=/opt/rocm/hcc/bin:/opt/rocm/hip/bin:/opt/rocm/bin:/opt/rocm/hcc/bin:$PATH
|
||||
ARG PARALLEL
|
||||
RUN --mount=type=cache,target=/root/.ccache \
|
||||
cmake --preset 'ROCm 7' -DOLLAMA_RUNNER_DIR="rocm_v7" \
|
||||
&& cmake --build --parallel ${PARALLEL} --preset 'ROCm 7' \
|
||||
&& cmake --install build --component HIP --strip --parallel ${PARALLEL}
|
||||
RUN rm -f dist/lib/ollama/rocm/rocblas/library/*gfx90[06]*
|
||||
RUN curl -fsSL https://golang.org/dl/go$(awk '/^go/ { print $2 }' go.mod).linux-$(case $(uname -m) in x86_64) echo amd64 ;; aarch64) echo arm64 ;; esac).tar.gz | tar xz -C /usr/local
|
||||
ENV PATH=/usr/local/go/bin:$PATH
|
||||
RUN go mod download
|
||||
ARG GOFLAGS="'-ldflags=-w -s'"
|
||||
ENV CGO_ENABLED=1
|
||||
ARG CGO_CFLAGS
|
||||
ARG CGO_CXXFLAGS
|
||||
RUN --mount=type=cache,target=/root/.cache/go-build \
|
||||
go build -trimpath -buildmode=pie -o /usr/bin/ollama .
|
||||
|
||||
|
||||
COPY /ollama-src/dist/lib/ollama /usr/lib/ollama
|
||||
|
||||
|
||||
# Set executable permissions
|
||||
RUN chmod +x /usr/bin/ollama
|
||||
|
||||
ENV LD_LIBRARY_PATH=/opt/rocm/lib:/usr/lib/ollama:/usr/lib/ollama/rocm:$LD_LIBRARY_PATH
|
||||
|
||||
|
||||
# Expose port
|
||||
ENV OLLAMA_HOST=0.0.0.0:11434
|
||||
EXPOSE 11434
|
||||
|
||||
@@ -31,10 +31,15 @@ services:
|
||||
group_add:
|
||||
- video
|
||||
environment:
|
||||
- OLLAMA_VULKAN=0
|
||||
- OLLAMA_DEBUG=2
|
||||
- OLLAMA_FLASH_ATTENTION=true
|
||||
- OLLAMA_KV_CACHE_TYPE="q8_0"
|
||||
- ROCR_VISIBLE_DEVICES=0
|
||||
- HSA_ENABLE_SDMA=0
|
||||
- OLLAMA_KEEP_ALIVE=-1
|
||||
- OLLAMA_MAX_LOADED_MODELS=1
|
||||
- OLLAMA_FLASH_ATTENTION=1
|
||||
- OLLAMA_GPU_OVERHEAD=0
|
||||
- OLLAMA_KEEP_ALIVE=1h
|
||||
restart: unless-stopped
|
||||
cap_add:
|
||||
- SYS_PTRACE
|
||||
|
||||
Reference in New Issue
Block a user