
通过云服务器安装Ollama并部署云端Deepseek
前言
本文将从购买GPU云服务器,连接云服务器,快捷安装Ollama,运行Ollama并安装Deepseek模型,开放Ollama端口支持公网访问讲解如何在节省大量成本的同时快捷部署云端Ollama模型
服务器选择
云服务器供应商有很多,各个云平台的购买和选择大同小异,本文一个能节省很多成本且安全稳定的云服务厂商:雨云
主要是雨云的部署非常方便便捷,再加上成本及其的便宜,这里就用雨云做演示了。
进入雨云官网:https://www.rainyun.com/Prokint_(从这个链接进有优惠)
进行登录注册,这里建议直接用微信登录注册,能打个五折
然后进去云服务器
点击购买云服务器
进来选江苏宿迁的,GPU运算
下面选你需要的套餐,我这里就直接使用旗舰版了,一块P40GPU,有8G显存,主要是价钱,在GPU算力里面是真的便宜
然后选择Ubuntu和1Panel面板,如果你需要公网IP上面就勾选独享公网IP,不过会贵一些。或者需要Windows系统的话就选Windows系统,不过就不能安装1Panel,需要自己去Ollama官网安装Ollama模型
点击购买就成功创建实例了,会自动弹窗到云服务器界面等待实例创建,创建完成后我们点击管理
进入1Panel面板
向下滑动我们能看到我们的1Panel面板成功安装,如果没有请等待一下
然后我们要去上方开放这个40080端口,点击端口设置
点击新建规则
将1panel的40080端口开放,点击创建映射规则,这样就能访问到
然后下面就有我们公网访问的ip,点击复制,添加到刚刚1panel生成的那一串东西里面,把公网ip和端口都替换
我这里替换完是:http://103.205.254.150:57028/ae9d6e22df ,然后浏览器访问这个url,进入面板
把刚刚上面1panel的面板用户和密码粘贴进去,勾选同意协议后,登录,进入我们的面板
安装Ollama
点击左侧的应用商店。然后找到我们的Ollama,没有的话在右上角搜索,然后点击安装
这里如果你需要开放端口给外网访问的话就勾选端口外部访问,我们这里勾选上了,然后点击确认
等待Ollama安装完成
配置Docker镜像加速
如果这里安装失败,可能是国内docker镜像问题,我们去左侧容器里面配置镜像加速
输入这个地址(https://docker.1panel.live),然后点击确认
输入立即重启,点击确认
部署Deepseek-R1模型
重启完成后,我们去应用商城,点击已安装,找到ollama,点击重建,等待重建完成
然我们去容器里面找到我们的ollama容器,点击右边的终端
点击连接
出现“#”就代表连接成功了
然后我们可以在里面使用ollama的命令,具体要安装什么模型,请参考ollama官网
我这里就先跑一个7b模型试试水,等待下载完,下载速度还是很快的
安装完成,随便问个问题试了一下,7b还是随随便便用的,token生成很快
又问了一个vue是什么的问题,分析的还是很全面的,之后看看更高的模型效果怎么样
开放Ollama公网端口
然后我们可以去雨云端口规则的地方开放11434端口(ollama默认的端口),然后通过ip:外网端口访问
访问成功,我们的ollama现在是运行起来的了
Ollama接口调试
同时还需要验证Ollama是否暴露了接口,验证方法是
your-ip:11434/api/chat # ollama exposes the interface
使用post方法去请求上面的地址,这里使用python如下
from abc import ABC, abstractmethod
import json
import requests
def ollama_api(url, model_name, prompt):
headers = {
"Content-Type": "application/json; charset=utf-8",
"Accept": "application/json"
}
json_input = {
"model": model_name,
"messages": [{
"role": "user",
"content": prompt
}],
"stream": False
}
while True:
response = requests.post(url,
headers=headers,
data=json.dumps(json_input))
try:
response_json = response.json()
content = response_json.get("message", {}).get("content", "")
content = json.loads(content)
print(content)
return content
except (json.JSONDecodeError, ValueError):
print("error")
break
url = "http://103.205.254.150:55733/api/chat" //这里是你的雨云开放的公网ip的ollama的API
model_name = "llama-70B-INT4"
prompt = "hello!"
response = ollama_api(url, model_name, prompt)
print(response)
如果需要别的模型也可以在docker里面使用ollama命令下载
教程到此结束
我的雨云UID:115483
- 感谢你赐予我前进的力量