一、查看服務器的操作系統版本
cat /etc/centos-release
二、下載并安裝ollama
1、ollama下載地址:
Releases · ollama/ollama · GitHubGet up and running with Llama 3.3, DeepSeek-R1, Phi-4, Gemma 3, Mistral Small 3.1 and other large language models. - Releases · ollama/ollamahttps://github.com/ollama/ollama/releases
? ? ? ? (1)、下載ollama
????????
????????(2)測試采用ollama0.5.5可以正常使用
????????
? ? ? ? (3)點擊v0.5.5,下拉找到安裝包進行下載:
????????
? ? ? ??(4)下載好后,上傳ollama-linux-amd64.tgz到/home目錄下
????????
? ? ?(5)在/home目錄下創建ollama文件夾:????????
mkdir ollama
2、手動安裝ollama????????
sudo tar -C /home/ollama -xzf ollama-linux-amd64.tgz
三、配置ollama
1、添加環境變量
????????(1)為當前用戶添加環境變量
echo 'export PATH=$PATH:/home/ollama/bin' >> ~/.bashrcsource ~/.bashrc
????????(2)或者為所有用戶添加環境變量
sudo echo 'export PATH=$PATH:/home/ollama/bin' >> /etc/profile
sudo source /etc/profile
2、啟動ollama
ollama serve
3、查看ollama版本
ollama -v
????????????????
4、設置ollama為后臺服務運行模式
? ? ? ? (1)為 Ollama 創建用戶和組
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
sudo usermod -a -G ollama $(whoami)
? ? ? ? (2)創建服務文件?
vi /etc/systemd/system/ollama.service
? ? ? ? (3)使用vi編輯器編輯服務文件,添加以下內容
[Unit]
Description=Ollama Service
After=network-online.target[Service]
ExecStart=/home/ollama/bin/ollama serve #修改路徑為ollama安裝目錄
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=$PATH"[Install]
WantedBy=default.target
? ? ? ? (4)重啟ollama服務
sudo systemctl daemon-reload
sudo systemctl enable ollama
四、更改模型下載路徑
默認情況下ollama模型的存儲目錄如下:
/usr/share/ollama/.ollama/models?,此目錄空間不足無法存儲deepseek模型,需要修改默認的下載路徑。
1、先創建一個存儲模型文件的文件夾,賦予相關權限:
sudo mkdir /home/dsmodels
sudo chown -R root:root /home/dsmodels
sudo chmod -R 777 /home/dsmodels
2、用vi編譯器打開ollama.service,在[Service]下面加入一行新的Environment
[Unit]
Description=Ollama Service
After=network-online.target[Service]
ExecStart=/home/ollama/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=$PATH"
Environment="OLLAMA_MODELS=/home/dsmodels" #新的模型下載路徑
3、執行以下命令刷新配置:
sudo systemctl daemon-reload
4、重啟ollama服務
sudo systemctl restart ollama.service
5、查看一下重啟后的ollama運行狀態
sudo systemctl status ollama
6、檢查路徑是否設置成功:
ollama list
因為是修改了模型的下載路徑,這個路徑下面環沒有任何模型,所以只有標題行,沒內容。這樣就表示成功了。
五、拉取deepseek模型
1、拉取deepseek大模型文件
ollama pull deepseek-r1:7b
2、啟動deepseek大模型
ollama run deepseek-r1:7b
3、再次查看ollama裝載模型情況
[root@localhost ollama]# ollama list
NAME ID SIZE MODIFIED
deepseek-r1:7b 0a8c26691023 4.7 GB 3 hours ago
六、開放ollama服務遠程訪問,實現Chatbox圖形化界面訪問
1.使用 netstat 或 ss 命令在宿主機上檢查 11434 端口的狀態
[root@localhost ollama]# netstat -tulnp | grep 11434
tcp6 0 0 :::11434 :::* LISTEN 21328/ollama
根據提供netstat的輸出,ollama服務正在監聽 127.0.0.1:11434 (即 localhost 的 11434 端口),而不是監聽所有網絡接口( 0.0.0.0:* 表示監聽所有接口)。這就是為什么您能夠通過 localhost 訪問服務,但是無法通過宿主機的 IP 地址 192.168.120.223 訪問的原因。
2、修改服務綁定地址:
如果 ollama 服務允許通過配置文件設置監聽地址,請將ollama配置文件中的監聽地址從 127.0.0.1 更改為 0.0.0.0。
[root@localhost ollama]# vi /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target[Service]
ExecStart=/home/ollama/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=$PATH"
Environment="OLLAMA_MODELS=/home/dsmodels"
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_ORIGINS=*"
[Install]
WantedBy=default.target
3.重啟 ollama 服務
sudo systemctl daemon-reload
sudo systemctl restart ollama.service
4、檢查環境變量是否正確設置
sudo systemctl show --property=Environment ollama.service
5、開放防火墻的11434端口:
如果你需要開放特定的端口,可以使用 --add-port 選項。例如,開放端口 11434:
sudo firewall-cmd --permanent --zone=public --add-port=11434/tcp
6、重新加載 firewalld 配置
每次修改防火墻規則后,需要重新加載 firewalld 配置
sudo firewall-cmd --reload
7、成功:
?
8、在Chatbox中設置API域名并選擇模型
9、在Chatbox中使用本地部署的deepseek模型
七、安裝open-webui 界面化訪問
1、安裝docker
yum install -y yum-utils device-mapper-persistent-data lvm2yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repoyum install -y docker-cesystemctl start docker && systemctl enable docker
2、運行open-webui容器
docker run -d -p 8082:8080 -e OLLAMA_BASE_URL=http://10.10.6.3:11434 -v /data/open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
3.、瀏覽器訪問:
http://10.10.6.3:8082/auth
按提示創建管理員賬號,創建完成之后需要多等待一會,彈出登陸頁面,進行登錄
八、部署本地deepseek大模型知識庫
1、使用ollama下載向量化工具nomic-embed-text
ollama pull nomic-embed-text
2、打開open-webui左下角的管理員面板,進入“設置”欄找到“模型”選項,并點擊右上角的設置圖標進行模型設置,如圖所示:
3、依次把deepseek和剛下載的nomicembed-text排序在前,并選擇默認模型為deepseek:
embed-text,點擊保存:
4、在管理員面板找到“文檔”選項,將“語義向量模型引擎”設置為Ollama,并且在“語義向量模型”手動輸入“nomic-embed-text:latest”,設置完點擊保存,如圖所示:
5、為了確保open-webui識別到Ollama,進一步找到“外部連接”選項,只勾選Ollama API而不勾選OpenAI API
6、回到工作空間的知識庫,上傳知識庫文檔,進行測試
7、測試
九、 部署過程中可能會遇到的問題及解決方案
1、安裝ollama
(1)使用官方ollama安裝腳本會遇到
ollama: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by ollama)
ollama: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.25' not found (required by ollama)
ollama: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ollama)
ollama: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by ollama)
ollama: /lib64/libstdc++.so.6: version `CXXABI_1.3.11' not found (required by ollama)
ollama: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ollama)
ollama: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by ollama)
(2)原因:
- 出現這個錯誤是因為 Ollama 程序依賴于較新版本的 GCC 和 Glibc 庫,但系統中安裝的庫版本過低,無法滿足其運行要求。
- CentOS 7/RHEL 7:默認 Glibc 為 2.17,GCC 為 4.8.5,遠低于 Ollama 要求的 2.27+。
(3)解決方案:
采用手動安裝更低版本的ollama
- Ollama下載地址: https://github.com/ollama/ollama/releases
(4)測試采用ollama0.5.5可以正常使用
(5)點擊v0.5.5,下拉找到安裝包進行下載:
(6)下載好后,上傳服務器,進行手動安裝
(7)不采用直接升級Glibc,因為Glibc 是 Linux 系統的核心組件,直接升級可能導致:
- 系統命令(如ls、bash)無法運行,因為它們依賴舊版本的 Glibc。
- 軟件包管理器(如yum、apt)崩潰,導致系統無法修復。
- 因此,升級 Glibc 需要謹慎操作,通常需要通過官方渠道或特定工具(如scl、conda)進行。
2、?瀏覽器訪問Open-WebUI找不到deepseek大模型
解決方案:
(1)編輯ollama配置文件:
vi /etc/systemd/system/ollama.service
(2)在配置文件中添加:
Environment="OLLAMA_HOST=0.0.0.0:11434"Environment="OLLAMA_ORIGINS=*"
(3)重啟ollama服務
sudo systemctl daemon-reloadsudo systemctl restart ollama.service
(4)檢查環境變量是否正確設置.
sudo systemctl show --property=Environment ollama.serviceEnvironment=PATH=$PATH OLLAMA_MODELS=/home/dsmodels OLLAMA_HOST=0.0.0.0:11434 OLLAMA_ORIGINS=*
3、open-webui知識庫上傳報錯
解決方案:
(1)使用ollama下載安裝向量化工具
ollama pull?nomic-embed-text
(2)打開open-webui左下角的管理員面板,進入“設置”欄找到“模型”選項,并點擊右上角的設置圖標進行模型設置,如圖所示:
(3)依次把deepseek和剛下載的nomicembed-text排序在前,并選擇默認模型為deepseek:
embed-text,點擊保存:
(4)在管理員面板找到“文檔”選項,將“語義向量模型引擎”設置為Ollama,并且在“語義向量模型”手動輸入“nomic-embed-text:latest”,設置完點擊保存,如圖所示:
(5)為了確保open-webui識別到Ollama,進一步找到“外部連接”選項,只勾選Ollama API而不勾選OpenAI API
(6)回到工作空間的知識庫,上傳知識庫文檔,進行測試
4、CUDA 版本不兼容
(1)問題表現:
在安裝 PyTorch 或者運行 DeepSeek 時,系統提示 CUDA 版本與 GPU 驅動不匹配。
(2)解決辦法:
首先,查看 GPU 驅動支持的 CUDA 版本:
nvidia-smi
接著,按照 CUDA 官網的指引,安裝對應的 CUDA Toolkit:
# 以CUDA 11.8為例wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.runsudo sh cuda_11.8.0_520.61.05_linux.run
最后,更新環境變量:
echo 'export PATH=/usr/local/cuda-11.8/bin:$PATH' >> ~/.bashrcecho 'export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH' >> ~/.bashrcsource ~/.bashrc
5、PyTorch 安裝失敗
(1)問題表現
在 pip 安裝 PyTorch 的過程中出現網絡錯誤,或者安裝后導入時提示找不到模塊。
(2)解決辦法:
使用清華源加速下載,并且根據 CUDA 版本選擇合適的 PyTorch 版本:
?
# CUDA 11.8對應的PyTorch安裝命令pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 -i Simple Index?
6、文件系統限制
(1)問題表現
在下載模型時,系統提示 “無法創建臨時文件”。
(2)解決辦法
?? 修改文件系統的最大文件數限制:
echo 'fs.file-max = 1048576' | sudo tee -a /etc/sysctl.confecho '* soft nofile 65536' | sudo tee -a /etc/security/limits.confecho '* hard nofile 65536' | sudo tee -a /etc/security/limits.confsudo sysctl -p
7、權限問題
(1)問題表現
無法讀取模型文件,或者在保存檢查點時提示權限被拒絕。
(2)解決辦法
??
修改模型文件的權限:
sudo chmod -R 755 /path/to/model
8、CUDA 內存溢出
(1)問題表現
模型運行時提示 “CUDA out of memory”。
(2)解決辦法:
??
減少批量大小(batch size),或者啟用梯度檢查點(gradient checkpointing):
# 在代碼中啟用梯度檢查點model.gradient_checkpointing_enable()
9、網絡連接的問題
(1)問題表現
在下載模型時出現連接超時的情況。
(2)解決辦法:
?? 使用代理或者手動下載模型:
# 使用代理export HTTP_PROXY=http://proxy.example.com:8080export HTTPS_PROXY=http://proxy.example.com:8080# 或者手動下載模型git clone https://huggingface.co/DeepSeek-RL/DeepSeek-7B-Chat.git?
10、SSL 證書驗證失敗
(1)問題表現
在下載過程中提示 “SSL: CERTIFICATE_VERIFY_FAILED”。
(2)解決辦法:
??
臨時禁用 SSL 驗證(不推薦在生產環境使用):
pip install --trusted-host pypi.python.org package_name
11、權限與安全策略
? ? ? ?(1)問題表現
- 服務無法綁定80/443端口
- 文件訪問被SELinux阻止
????????(2)解決方案
1、解決端口權限問題:sudo setcap 'cap_net_bind_service=+ep' /usr/bin/python3.8? # 允許非root綁定低端口或使用反向代理(Nginx/Apache)轉發請求。2、調整SELinux策略:sudo setenforce 0? # 臨時關閉
sudo semanage port -a -t http_port_t -p tcp 8080? # 開放自定義端口
永久生效需修改 /etc/selinux/config
12、網絡與防火墻
(1)問題表現
- 外部無法訪問服務端口
- 模型下載失敗(境外源速度慢)
(2)解決方案
(1)配置防火墻:sudo firewall-cmd --permanent --add-port=8080/tcpsudo firewall-cmd --reload(2)使用國內鏡像加速:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt(3)或配置全局鏡像:mkdir ~/.pip && echo -e "[global]\nindex-url = https://pypi.tuna.tsinghua.edu.cn/simple" > ~/.pip/pip.conf