เลือกหัวข้ออ่าน
ใช้ประโยชน์จาก Nvidia GPU เต็มที่สำหรับการประมวลผล LLM ที่เร็วขึ้น
ReadyOpen WebUI ที่ใช้งานง่าย สำหรับแชทกับ AI โดยไม่ต้องใช้ command line
Includedข้อมูลและโมเดลจะไม่หายเมื่อ restart container
SecuredScripts สำหรับจัดการระบบง่ายๆ ผ่าน Windows Batch และ PowerShell
Toolsnvidia-smi
# เพิ่ม repository
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
sudo apt-get install -y nvidia-container-toolkit
# กำหนดค่า Docker
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
D:\Docker\ollama\
├── docker-compose.yml # การกำหนดค่าหลัก (GPU)
├── docker-compose-cpu.yml # การกำหนดค่าสำรอง (CPU)
├── .env.example # ตัวอย่างการกำหนดค่า
├── manage-ollama.bat # Script จัดการ (Windows)
├── manage-ollama.ps1 # Script จัดการ (PowerShell)
├── README.md # คู่มือใช้งานฉบับเต็ม
├── TROUBLESHOOTING.md # คู่มือแก้ไขปัญหา
└── QUICKSTART.md # คู่มือเริ่มต้นอย่างรวดเร็ว
version: '3.8'
services:
ollama:
image: ollama/ollama:latest
container_name: ollama
restart: unless-stopped
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
environment:
- OLLAMA_KEEP_ALIVE=24h
- NVIDIA_VISIBLE_DEVICES=all
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: ["gpu"]
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
restart: unless-stopped
ports:
- "3000:8080"
volumes:
- open_webui_data:/app/backend/data
environment:
- OLLAMA_BASE_URL=http://ollama:11434
depends_on:
- ollama
volumes:
ollama_data:
open_webui_data:
Ollama API: http://localhost:11434
Open WebUI: http://localhost:3000
cd D:\Docker\ollama
manage-ollama.bat
cd D:\Docker\ollama
.\manage-ollama.ps1
cd D:\Docker\ollama
docker-compose up -d
# ตรวจสอบ containers
docker-compose ps
# ตรวจสอบ logs
docker-compose logs ollama
# ตรวจสอบ GPU ใน container
docker exec -it ollama nvidia-smi
โมเดล | ขนาดไฟล์ | VRAM ต้องการ | ความเร็ว | คุณภาพ | จุดเด่น |
---|---|---|---|---|---|
llama2:7b |
4.1GB | 8GB | ⚡⚡⚡ | ⭐⭐⭐ | เริ่มต้นใช้งาน |
codellama:7b |
3.8GB | 8GB | ⚡⚡⚡ | ⭐⭐⭐ | เขียนโค้ด |
llama2:13b |
7.4GB | 16GB | ⚡⚡ | ⭐⭐⭐⭐ | คุณภาพดี |
mistral:7b |
4.1GB | 8GB | ⚡⚡⚡⚡ | ⭐⭐⭐ | เร็วและมีประสิทธิภาพ |
llama2:70b |
40GB | 48GB+ | ⚡ | ⭐⭐⭐⭐⭐ | คุณภาพสูงสุด |
# เข้าสู่ container
docker exec -it ollama bash
# ดาวน์โหลดโมเดล (แนะนำเริ่มต้นด้วย llama2:7b)
ollama pull llama2:7b
# ทดสอบการใช้งาน
ollama run llama2:7b
เลือก option 5 (Download Model) จาก management script
# ดูรายการโมเดลที่ติดตั้งแล้ว
docker exec -it ollama ollama list
# ลบโมเดลที่ไม่ใช้
docker exec -it ollama ollama rm llama2:70b
# ดูข้อมูลโมเดล
docker exec -it ollama ollama show llama2:7b
# ทดสอบ API พื้นฐาน
curl http://localhost:11434/api/tags
# สร้างข้อความ
curl http://localhost:11434/api/generate -d '{
"model": "llama2:7b",
"prompt": "Write a hello world program in Python",
"stream": false
}'
# แชทแบบ conversation
curl http://localhost:11434/api/chat -d '{
"model": "llama2:7b",
"messages": [
{
"role": "user",
"content": "Hello! How are you?"
}
]
}'
# เข้าสู่โหมดแชท
docker exec -it ollama ollama run llama2:7b
# ออกจากโหมดแชท
/bye
# รันคำสั่งเดียว
docker exec -it ollama ollama run llama2:7b "Explain quantum computing in simple terms"
การกระทำ | คำสั่ง | คำอธิบาย |
---|---|---|
เริ่มต้น | docker-compose up -d |
เริ่มต้น services ทั้งหมด |
หยุด | docker-compose down |
หยุด services |
รีสตาร์ท | docker-compose restart |
รีสตาร์ท services |
ดู logs | docker-compose logs -f |
ติดตาม logs แบบ real-time |
ดูสถานะ | docker-compose ps |
แสดงสถานะ containers |
อัพเดต | docker-compose pull && docker-compose up -d |
อัพเดต images |
cd D:\Docker\ollama
manage-ollama.bat
เมนูแบบ interactive สำหรับผู้ใช้ทั่วไป
cd D:\Docker\ollama
.\manage-ollama.ps1
Script ขั้นสูงพร้อม GPU monitoring
# สำรองข้อมูลโมเดล
docker run --rm -v ollama_data:/data -v ${PWD}:/backup alpine tar czf /backup/ollama-backup.tar.gz /data
# กู้คืนข้อมูล
docker run --rm -v ollama_data:/data -v ${PWD}:/backup alpine tar xzf /backup/ollama-backup.tar.gz -C /
อาการ: โมเดลทำงานช้า, ไม่เห็น GPU usage
วิธีแก้:
# ตรวจสอบ GPU บน host
nvidia-smi
# ตรวจสอบ GPU ใน container
docker exec -it ollama nvidia-smi
# แก้ไข NVIDIA Container Toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
อาการ: Error: Port 11434 is already in use
วิธีแก้:
# ตรวจสอบ process ที่ใช้ port
netstat -ano | findstr :11434
# เปลี่ยน port ใน docker-compose.yml
ports:
- "11435:11434" # เปลี่ยนจาก 11434 เป็น 11435
อาการ: Container restart, Out of memory errors
วิธีแก้:
# ตรวจสอบ Docker
docker version
docker info
# ตรวจสอบ containers
docker-compose ps
docker stats
# ตรวจสอบ GPU
nvidia-smi
docker exec -it ollama nvidia-smi
# ตรวจสอบ logs
docker-compose logs ollama
docker-compose logs open-webui
# หยุดและลบ containers
docker-compose down
# ลบ volumes (โมเดลจะหายทั้งหมด!)
docker-compose down -v
# ลบ images ที่ไม่ใช้
docker image prune -a
# ลบทุกอย่างที่ไม่ใช้
docker system prune -a --volumes
หากยังแก้ไขปัญหาไม่ได้ ตรวจสอบ:
คุณได้ติดตั้ง Ollama Docker ด้วย Nvidia GPU support เรียบร้อยแล้ว! ตอนนี้คุณสามารถใช้งาน AI ขั้นสูงบนคอมพิวเตอร์ของคุณเองได้แล้ว
Happy AI Chatting! 🤖✨
เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า
คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น
ยอมรับทั้งหมดประเภทของคุกกี้มีความจำเป็นสำหรับการทำงานของเว็บไซต์ เพื่อให้คุณสามารถใช้ได้อย่างเป็นปกติ และเข้าชมเว็บไซต์ คุณไม่สามารถปิดการทำงานของคุกกี้นี้ในระบบเว็บไซต์ของเราได้
คุกกี้ประเภทนี้จะทำการเก็บข้อมูลการใช้งานเว็บไซต์ของคุณ เพื่อเป็นประโยชน์ในการวัดผล ปรับปรุง และพัฒนาประสบการณ์ที่ดีในการใช้งานเว็บไซต์ ถ้าหากท่านไม่ยินยอมให้เราใช้คุกกี้นี้ เราจะไม่สามารถวัดผล ปรับปรุงและพัฒนาเว็บไซต์ได้
รายละเอียดคุกกี้
คุกกี้ประเภทนี้จะเก็บข้อมูลต่าง ๆ รวมทั้งข้อมูลส่วนบุคคลเกี่ยวกับตัวคุณเพื่อเราสามารถนำมาวิเคราะห์ และนำเสนอเนื้อหา ให้ตรงกับความเหมาะสมกับความสนใจของคุณ ถ้าหากคุณไม่ยินยอมเราจะไม่สามารถนำเสนอเนื้อหาและโฆษณาได้ไม่ตรงกับความสนใจของคุณ
รายละเอียดคุกกี้