AILLM本地部署 openwebui + Ollama
Bin LianGPU (cuda) docker 配置
1 2 3 4 5 6
| curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \ | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \ | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \ | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt-get update
|
1
| sudo apt-get install -y nvidia-container-toolkit
|
ollama docker 配置
1
| docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
|
docker ollama 使用
1
| docker exec -it ollama ollama run
|
ollama详细使用详见: Linux, ollama 配置,用法,默认路径更改,端口释放
然后docker 里面就只要加上 docker exec -it ollama 进入到沙盒里就可以一样操作了
docker compose 配置 ollama + openwebui
参考git仓库:valiantlynx/ollama-docker: Welcome to the Ollama Docker Compose Setup! This project simplifies the deployment of Ollama using Docker Compose, making it easy to run Ollama with all its dependencies in a containerized environment
项目的 Tree
比较推荐直接使用此项目,对于docker compose推荐建立一个专门的文件夹来管理不同的应用,打开这个文件夹执行:
1 2
| git clone https://github.com/valiantlynx/ollama-docker.git cd ollama-docker
|
此时ollama-docker文件夹下应该有两个 docker-compose文件(1个gpu版本 1个非gpu)
默认使用gpu版本,此时需要稍微修改一下配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
| version: '3.8'
services: app: build: . ports: - 8000:8000 - 5678:5678 volumes: - .:/code command: uvicorn src.main:app --host 0.0.0.0 --port 8000 --reload restart: always depends_on: - ollama - ollama-webui networks: - ollama-docker ollama: volumes: - ./ollama/ollama:/root/.ollama container_name: ollama pull_policy: always tty: true restart: unless-stopped image: ollama/ollama:latest ports: - 7869:11434 environment: - OLLAMA_KEEP_ALIVE=24h networks: - ollama-docker deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [gpu]
ollama-webui: image: ghcr.io/open-webui/open-webui:main container_name: ollama-webui volumes: - ./ollama/ollama-webui:/app/backend/data depends_on: - ollama ports: - 8080:8080 environment: - OLLAMA_BASE_URLS=http://host.docker.internal:7869 - ENV=dev - WEBUI_AUTH=False - WEBUI_NAME=<自定义你的网页名> - WEBUI_URL=http://localhost:8080 - WEBUI_SECRET_KEY=t0p-s3cr3t extra_hosts: - host.docker.internal:host-gateway restart: unless-stopped networks: - ollama-docker
networks: ollama-docker: external: false
|
- WEBUI_AUTH=False ## 特别注意如果需要部署后能让其他人登陆访问的话,在运行前把这个设置为True
- 如果已经运行了,后续想要更改,需要先删除 ./ollama/.ollama 文件
部署
简单的在配置好yaml文件后执行:
1
| docker-compose -f docker-compose-ollama-gpu.yaml up -d
|
不加 -f (部署特定文件) 的话默认是找当前目录下:docker-compose.yml文件执行