ollama如何修改服务端口号

修改ollama配置使其可以监听0.0.0.0和修改端口,可以外网访问


1.修改文件

vim /etc/systemd/system/ollama.service


2.增加

[Service]

Environment="OLLAMA_HOST=0.0.0.0:11434"


3.重现加载

sudo systemctl daemon-reload

sudo systemctl restart ollama

sudo systemctl status ollama


4.查看日志

journalctl -u ollama.service


5.open-api

这样可以通过外网访问


curl http://192.168.31.11:11434/api/chat -d '{

  "model": "qwen:0.5b-chat-v1.5-q4_K_M",

  "messages": [

    { "role": "user", "content": "介绍一下北京景点?" }

  ],

  "stream": false

}'


6.修改端口后,访问指令方式


把Ollama的默认端口修改后,如果再运行:


ollama ps

则会报下面的错:


Error: could not connect to ollama app, is it running?

感觉似乎是没有运行一样,运行ollama list也是一样的结果,但是如果查看服务的状态:


sudo systemctl status ollama

可以看到服务是active的。百思不得其解,以为是ollama的bug,结果在这里看到:


https://github.com/ollama/ollama/issues/2928


原来改过端口之后要加端口号才能正常运行命令:


OLLAMA_HOST=127.0.0.1:10001 ollama list

 

OLLAMA_HOST=127.0.0.1:10001 ollama ps

 

OLLAMA_HOST=127.0.0.1:10001 ollama run qwen2:72b

我这里对应的.service文件是这样:


[Unit]

Description=Ollama Service

After=network-online.target

 

[Service]

ExecStart=/usr/local/bin/ollama serve

User=ollama

Group=ollama

Restart=always

RestartSec=3

Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin"

Environment="OLLAMA_HOST=0.0.0.0:10001"

Environment="OLLAMA_KEEP_ALIVE=1h"

Environment="OLLAMA_NUM_PARALLEL=5"

 

[Install]

WantedBy=default.target

其实User,Group之类的都不需要修改,主要是要加上端口号才能正常运行。修改完.service文件,需要重新启动一下服务(我之前说的是重启操作系统,效果是一样的):


sudo systemctl daemon-reload

sudo systemctl restart ollama

另外,修改并发数之后,加载到GPU/CPU的模型大小也会发生变化:


~$ OLLAMA_HOST=127.0.0.1:10001 ollama ps

NAME      ID          SIZE PROCESSOR      UNTIL               

qwen2:72b 14066dfa503f 49 GB 5%/95% CPU/GPU 59 minutes from now

原本42GB的qwen2:72b变成49GB了,interesting,虽然大小只变化了一点,但在CPU上之后速度慢了很多。


就简单总结这么多