【AI】在Ubuntu中使用docker对DeepSeek的部署与使用

ops/2025/2/11 17:33:46/

这篇文章前言是我基于部署好的deepseek-r1:8b模型跑出来的


关于部署DeepSeek的前言与介绍

在当今快速发展的技术环境中,有效地利用机器学习工具来解决问题变得越来越重要。今天,我将引入一个名为DeepSeek 的工具,它作为一种强大的搜索引擎,不仅能够帮助我们更高效地定位所需信息,还能通过自动化的方式提供深度的分析和见解。

DeepSeek简介

DeepSeek 是一款基于先进人工智能技术开发的搜索引擎,它结合了最先进的自然语言处理和大数据分析能力,能够为用户提供高度个性化的搜索体验。与传统搜索引擎不同,DeepSeek不仅会根据关键词匹配结果,还能理解用户的意图,自动调整搜索策略,以满足特定需求。

为什么选择部署DeepSeek

在我的项目中,我需要处理大量的数据,寻找特定的模式和趋势。传统的方法往往效率低下且耗时较长,而通过部署DeepSeek,可以将其集成到现有的工作流程中,自动化地进行信息检索和分析。这不仅能够提高效率,还能减少人为错误,确保数据处理的准确性。

部署目标

本文旨在详细描述我对DeepSeek 的部署过程、初步体验以及实际应用中的效果。通过分享我的经验,我希望能为其他用户提供有价值的参考,同时展示机器学习工具在日常工作中的潜力和便利性。


首先是环境介绍

我的笔记本安装了ubuntu系统,所以我直接在ubuntu下使用docker快速部署ollama
GPU:RTX 2060 6G
CPU:AMD R7 4800H
MEM:DDR4 3200 8x2 16G
Docker Server Version: 25.0.2
在这里插入图片描述

准备工作

安装docker脚本,使用root权限,需要联网

#!/bin/bash
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
apt update#安装指定版本 这里我选择25.2版本,使用稍微靠后一点的版本,稳定性更好
apt-get install docker-ce=5:25.0.2-1~ubuntu.20.04~focal
apt-mark hold docker-ce docker-ce-cli
# docker 要使用gpu设备需要安装驱动
curl -s -L https://nvidia.github.io/nvidia-container-runtime/gpgkey |   sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.list |   sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list
sudo apt-get update
sudo apt-get install nvidia-container-runtime#安装二进制包docker-compose
wget https://ghfast.top/https://github.com/docker/compose/releases/download/v2.27.3/docker-compose-linux-x86_64
chmod +x  docker-compose-linux-x86_64
mv docker-compose-linux-x86_64 /usr/local/bin/docker-composemkdir /etc/docker/
#写入镜像加速配置
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.1ms.run","https://docker-0.unsee.tech","https://docker.hlmirror.com","https://func.ink"]}
EOFsystemctl daemon-reload
systemctl enable docker
systemctl start dockersystemctl status docker

拉取镜像

# web前端服务
docker pull ghcr.io/open-webui/open-webui:main      
# ollama服务
docker pull ollama/ollama:0.5.7

编排文件

#创建网络
docker  network create --subnet 172.20.0.0/16  ollama-net
#创建目录
mkdir {ollamadeamon,ollamawebui}#目录结构如下,将下面给出的文件写入docker-compose.yaml
luobozi@lenoud:~/docker$ tree -L 2
├── ollamadeamon   
│   └── docker-compose.yaml  #ollamadeamon目录下docker-compose.yaml文件
├── ollamawebui
│   ├── docker-compose.yaml  #ollamawebui目录下docker-compose.yaml文件

dockercomposeyaml_100">ollamadeamon-docker-compose.yaml

version: "3.3"
services:ollama:image: ollama/ollama:0.5.7container_name: ollama-deamonhostname: ollama-deamonrestart: unless-stoppedports:- 11434:11434networks:- ollama-nettty: truevolumes:- ./data:/root/.ollamadeploy:# 添加 GPU 资源配置resources:reservations:devices:- capabilities:- gpuenvironment:# 可选:设置 CUDA 环境变量- NVIDIA_VISIBLE_DEVICES=all # 使容器可以访问所有 GPU- NVIDIA_DRIVER_CAPABILITIES=compute,utility # 启用计算和工具功能
networks:ollama-net:external: true

dockercomposeyaml_131">ollamawebui-docker-compose.yaml

version: "3.3"
services:open-webui:image: ghcr.io/open-webui/open-webui:maincontainer_name: ollama-webuihostname: ollama-webuirestart: unless-stoppednetworks:- ollama-netports:- 3000:8080extra_hosts:- host.docker.internal:host-gatewayvolumes:- ./data:/app/backend/dataenvironment:- ENABLE_OPENAI_API=False- ENABLE_RAG_WEB_SEARCH=True- RAG_WEB_SEARCH_ENGINE="duckduckgo"- RAG_WEB_SEARCH_RESULT_COUNT=3- RAG_WEB_SEARCH_CONCURRENT_REQUESTS=10
networks:ollama-net:external: true

启动容器

进入对应的docker-compose.yaml文件所在目录下运行命令启动容器
cd ./ollamadeamon
docker-compose up -dcd ../ollamawebui
docker-compose up -d

拉取deepseek模型

#进入容器
docker exec -it ollama-deamon bash#拉取14b模型,按照你的配置和需要拉取即可
ollama pull deepseek-r1:14b#下载好后,运行模型
ollama run deepseek-r1:14b

在这里插入图片描述

访问本地前端

访问 http://localhost:3000,设置用户名和密码
在这里插入图片描述
选择下载好的模型使用即可
在这里插入图片描述

8b模型使用示例

前端代码预览

在这里插入图片描述

整体回答

在这里插入图片描述

推导过程

在这里插入图片描述

GPU 使用情况

在这里插入图片描述

在这里插入图片描述


http://www.ppmy.cn/ops/157566.html

相关文章

Vue 响应式渲染 - Vue2 Class和style

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue响应式渲染 - Vue2 Class和style 目录 Vue2 Class和style 动态切换class-对象 添加新类 如何解决方案 动态切换class-数组 增加类方式 动态切换style-对象 在data中设置变量 动态添加底层不支持 增加元素 动态添…

关于SoC产品介绍:ICNM8501

4K显示器 主控芯片scaler IC——ICNM8501。 结合了两个符合HDMI 2.0标准的数 字输入接口和HDCP1.4/HDCP2.2&#xff0c;两个DP1.4数字输入接口&#xff0c; 一个高质量的放大/缩小和收缩引擎&#xff0c;一个多色屏幕显示&#xff08;OSD&#xff09; 控制器和许多其他功能。3…

flink JobGraph解析

JobGraph组成 JobGraph主要是StreamGraph经过优化后生成的&#xff0c;主要优化的就是对符合条件节点进行chain&#xff0c;这样可以减少数据流动的序列化和传输。 JobGraph主要由三部分组成。 JobVertex&#xff1a;图的顶点。输入是一个JobEdge&#xff0c;输出是Intermedi…

STL函数算法笔记

STL函数算法笔记 今天我们来学习的是STL库中的一些函数。首先,STL这个东西大家一定非常熟悉,里面很多的数据结构都帮了大家不少忙,那么今天我们就来说几个重要的数据结构。 向量 向量,也就是数据结构vector,你也可以称之为动态数组,本质跟数组差不多,只不过有一些好处…

DeepSeek R1技术报告关键解析(8/10):DeepSeek-R1 的“aha 时刻”,AI 自主学习的新突破

1. 什么是 AI 的“aha 时刻”&#xff1f; 在强化学习过程中&#xff0c;AI 的推理能力并不是线性增长的&#xff0c;而是会经历一些关键的“顿悟”时刻&#xff0c;研究人员将其称为“aha 时刻”。 这是 AI 在训练过程中突然学会了一种新的推理方式&#xff0c;或者能够主动…

伺服使能的含义解析

前言&#xff1a; 大家好&#xff0c;我是上位机马工&#xff0c;硕士毕业4年年入40万&#xff0c;目前在一家自动化公司担任软件经理&#xff0c;从事C#上位机软件开发8年以上&#xff01;我们在开发C#的运动控制程序的时候&#xff0c;一个必要的步骤就是对伺服上使能&#…

LabVIEW2025中文版软件安装包、工具包、安装教程下载

下载链接&#xff1a;LabVIEW及工具包大全-三易电子工作室http://blog.eeecontrol.com/labview6666 《LabVIEW2025安装图文教程》 1、解压后&#xff0c;双击install.exe安装 2、选中“我接受上述2条许可协议”&#xff0c;点击下一步 3、点击下一步&#xff0c;安装NI Packa…

【多线程-第三天-NSOperation和GCD的区别 Objective-C语言】

一、我们来看NSOperation和GCD的区别 1.我们来对比一下,NSOperation和GCD, 那这个代码,我们都写过了, 我们来看一下它们的特点啊,首先来看GCD, 1)GCD是C语言的框架,是iOS4.0之后推出的,并且它的特点是,针对多核做了优化,可以充分利用CPU的多核,OK,这是GCD, 2…