你好,如果install.sh脚本有一个"自动检测"功能,可以在Linux机器上安装过程中识别当前运行的init系统,然后相应地安装Ollama,那就太好了。操作系统:Gentoo Linux内核:6.7.6-gentoo-x86_64初始化系统:OpenRC
zf2sa74q1#
hi @ElevatedEuphoria,你是否成功编写了自己的OpenRC守护进程来运行Ollama?或者你是否找到了某种解决方法?
sqyvllje2#
你好,@ElevatedEuphoria,你是否成功编写了自己的OpenRC守护进程来管理Ollama?或者你是否找到了某种解决方法?嘿,我让copilot完成了这个任务。我可以与你分享代码。实际上我在考虑为检查init系统并相应地创建守护进程做出贡献。我不知道关于AI代码在AI工具上的问题😂
zf9nrax13#
我设法写了这个:
#!/sbin/openrc-run name=$RC_SVCNAME description="Start ollama's daemon" supervisor=supervise-daemon command="/usr/bin/ollama" command_args="serve" command_user="ollama"
但是它是否能作为systemd服务的1:1替代品,我不确定PS:如果你把守护进程脚本发布到某个地方,那将非常有帮助
ut6juiuv4#
嗨,伙计们!我刚刚创建了自己的Gentoo覆盖层,到目前为止,第一个也是唯一的软件包是ollama-bin。请查看:https://github.com/grouzen/lamdness-overlay
ollama-bin
9vw9lbht5#
@CreeperMain 你好,我已经制作了自己的主分支安装脚本补丁,但是不知道如何使用GitHub。我尝试提交问题,但不知道是否成功。
这个脚本已经在Gentoo示例上进行了测试并可以正常工作。
这里是参考链接:964b70c
注意:我还没有在我的新版本的脚本上测试基于systemd的系统。这是完整的install.sh脚本,已经应用了openrc补丁。https://github.com/ElevatedEuphoria/ollamainstall/blob/main/install.sh@grouzen 如果你愿意的话,我们可以解决如何整合我们的两个解决方案 :)抱歉回复晚了 @CreeperMain & @grouzen 在ai的帮助下,已经将脚本开发成可用状态。
6kkfgxo06#
在openrc中,CUDA_VISIBLE_DEVICES=0在这里不起作用。它在用户命令行CLI中起作用,在这个命令中,ollama将使用GPU:screen -S ollama_server -dm bash -c "CUDA_VISIBLE_DEVICES=0 OLLAMA_ORIGINS=* OLLAMA_MODELS=/data/models/ollama/models/ OLLAMA_HOST=0.0.0.0 ollama serve"这是我的openrc脚本,但是它将在没有GPU的情况下启动ollama服务。
screen -S ollama_server -dm bash -c "CUDA_VISIBLE_DEVICES=0 OLLAMA_ORIGINS=* OLLAMA_MODELS=/data/models/ollama/models/ OLLAMA_HOST=0.0.0.0 ollama serve"
#!/sbin/openrc-run depend() { need net } NAME=ollama PIDFILE=/var/run/ollama.pid DIR=/opt/bin MODELS=/data/models/ollama/models/ HOST=0.0.0.0 CMD=$DIR/"ollama serve" # --exec /bin/sh -- -c "export OLLAMA_DEBUG=1; export OLLAMA_MODELS=$MODELS; export OLLAMA_HOST=$HOST; export CUDA_VISIBLE_DEVICES=0; $CMD" start() { ebegin "Starting ollama service" start-stop-daemon --start --background \ --chdir $DIR \ --user $NAME \ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \ --make-pidfile --pidfile $PIDFILE \ --exec /bin/sh -- -c "export OLLAMA_DEBUG=1; export OLLAMA_MODELS=$MODELS; export OLLAMA_HOST=$HOST; export CUDA_VISIBLE_DEVICES=0; $CMD" eend $? } stop() { ebegin "Stopping ollma service" start-stop-daemon --stop \ --pidfile $PIDFILE \ --user $NAME \ --exec $CMD \ --signal 2 eend $? }
6条答案
按热度按时间zf2sa74q1#
hi @ElevatedEuphoria,你是否成功编写了自己的OpenRC守护进程来运行Ollama?或者你是否找到了某种解决方法?
sqyvllje2#
你好,@ElevatedEuphoria,你是否成功编写了自己的OpenRC守护进程来管理Ollama?或者你是否找到了某种解决方法?
嘿,
我让copilot完成了这个任务。我可以与你分享代码。实际上我在考虑为检查init系统并相应地创建守护进程做出贡献。
我不知道关于AI代码在AI工具上的问题😂
zf9nrax13#
我设法写了这个:
但是它是否能作为systemd服务的1:1替代品,我不确定
PS:如果你把守护进程脚本发布到某个地方,那将非常有帮助
ut6juiuv4#
嗨,伙计们!
我刚刚创建了自己的Gentoo覆盖层,到目前为止,第一个也是唯一的软件包是
ollama-bin
。请查看:https://github.com/grouzen/lamdness-overlay9vw9lbht5#
@CreeperMain 你好,我已经制作了自己的主分支安装脚本补丁,但是不知道如何使用GitHub。我尝试提交问题,但不知道是否成功。
这个脚本已经在Gentoo示例上进行了测试并可以正常工作。
这里是参考链接:
964b70c
注意:我还没有在我的新版本的脚本上测试基于systemd的系统。
这是完整的install.sh脚本,已经应用了openrc补丁。
https://github.com/ElevatedEuphoria/ollamainstall/blob/main/install.sh
@grouzen 如果你愿意的话,我们可以解决如何整合我们的两个解决方案 :)
抱歉回复晚了 @CreeperMain & @grouzen 在ai的帮助下,已经将脚本开发成可用状态。
6kkfgxo06#
在openrc中,CUDA_VISIBLE_DEVICES=0在这里不起作用。它在用户命令行CLI中起作用,在这个命令中,ollama将使用GPU:
screen -S ollama_server -dm bash -c "CUDA_VISIBLE_DEVICES=0 OLLAMA_ORIGINS=* OLLAMA_MODELS=/data/models/ollama/models/ OLLAMA_HOST=0.0.0.0 ollama serve"
这是我的openrc脚本,但是它将在没有GPU的情况下启动ollama服务。