build_linux.sh 760 B

1234567891011121314151617181920212223242526272829
  1. #!/bin/sh
  2. #
  3. # Mac ARM users, rosetta can be flaky, so to use a remote x86 builder
  4. #
  5. # docker context create amd64 --docker host=ssh://mybuildhost
  6. # docker buildx create --name mybuilder amd64 --platform linux/amd64
  7. # docker buildx create --name mybuilder --append desktop-linux --platform linux/arm64
  8. # docker buildx use mybuilder
  9. set -eu
  10. . $(dirname $0)/env.sh
  11. mkdir -p dist
  12. docker buildx build \
  13. --output type=local,dest=./dist/ \
  14. --platform=${PLATFORM} \
  15. ${OLLAMA_COMMON_BUILD_ARGS} \
  16. --target dist \
  17. -f Dockerfile \
  18. .
  19. # buildx behavior changes for single vs. multiplatform
  20. if echo $PLATFORM | grep "," > /dev/null ; then
  21. mv -f ./dist/linux_*64/ollama* ./dist/
  22. rmdir ./dist/linux_*64
  23. fi