好看的旅游网站模版,110建筑人才网官网,如何做企业组织架构图,做网站要具备些什么条件文章目录 Windows中使用Docker安装Anythingllm#xff0c;基于deepseek构建自己的知识库问答大模型1. 安装 Docker Desktop2. 使用Docker拉取Anythingllm镜像2. 设置 STORAGE_LOCATION 路径3. 创建存储目录和 .env 文件.env 文件的作用关键配置项 4. 运行 Docker 命令docker r… 文章目录 Windows中使用Docker安装Anythingllm基于deepseek构建自己的知识库问答大模型1. 安装 Docker Desktop2. 使用Docker拉取Anythingllm镜像2. 设置 STORAGE_LOCATION 路径3. 创建存储目录和 .env 文件.env 文件的作用关键配置项 4. 运行 Docker 命令docker run 命令详细解析各部分的含义 5. 访问应用6. 配置环境聊天设置向量数据库嵌入首选项添加知识库成员管理局域网内其他用户访问 7. 总结 Windows中使用Docker安装Anythingllm基于deepseek构建自己的知识库问答大模型
我习惯在CMD中运行命令我看一些教程使用Docker安装Anythingllm时在Power Shell中。
该教程在 Windows CMD 中运行这个 docker 命令以下是从头到尾的步骤包括如何在 CMD 中正确设置和运行该命令。
电脑配置Win11wsl24070tis内存48G
大模型ollama-deepseek-r1:14b
所用软件ollamadockeranythingllm
4070tis使用anythingllm在deepseek-r1:14b下的生成tocken速度大概是52toc/s 备注ollama需要自己首先安装去官网下载然后拉取对应大模型即可。
1. 安装 Docker Desktop
确保你已经安装并启动了 Docker Desktop。如果还没有安装可以从 Docker 官网 下载并安装。
Docker官方网址https://www.docker.com/products/docker-desktop/
记得开启电脑wsl2如果没有安装过wsl可以看如下
微软官方教程https://learn.microsoft.com/en-us/windows/wsl/setup/environment
2. 使用Docker拉取Anythingllm镜像
拉取镜像命令如下
docker pull mintplexlabs/anythingllm之后查看是否有该镜像使用命令
docker images可以看到电脑中存在Anythingllm这个镜像了
2. 设置 STORAGE_LOCATION 路径
在 CMD 中你可以使用 set 命令来设置环境变量。假设你希望将 STORAGE_LOCATION 设置为 Windows 的文档目录可以按以下步骤操作逐行运行如下命令如下图这三行可以从如下面代码行中复制。 打开 CMD管理员模式。 设置存储目录你可以自定义这个路径下面是一个示例 第一行代码 set STORAGE_LOCATION%USERPROFILE%\Documents\anythingllm3. 创建存储目录和 .env 文件
确保存储目录存在并且 .env 文件已经创建。使用以下命令来确保这些文件存在 创建存储目录如果目录不存在 第二行代码 if not exist %STORAGE_LOCATION% mkdir %STORAGE_LOCATION%创建 .env 文件如果文件不存在 第三行代码 if not exist %STORAGE_LOCATION%\.env echo. %STORAGE_LOCATION%\.env此时会在电脑文档的文件夹下存在一个anythingllm文件夹如下所示 该文件夹下存在一个.env文件存放一些配置。 .env 文件的作用
.env 文件是用于存储容器配置的环境文件通常包含敏感信息和应用的配置参数。例如配置大语言模型LLM、API 密钥、数据库连接等。容器运行时它会读取 .env 文件并使用其中的配置信息。
关键配置项
在 .env 文件中常见的配置项包括
SERVER_PORT指定服务器运行的端口。JWT_SECRET用于生成和验证 JWTJSON Web Token的密钥。STORAGE_DIR指定存储数据的路径。LLM_PROVIDER配置大语言模型提供者。OLLAMA_BASE_PATH配置 Ollama 服务的基础 URL 地址。OPEN_AI_KEY用于访问 OpenAI API 的密钥。
.env 文件中配置的内容会根据你的需求和使用的服务不同而有所变化。 4. 运行 Docker 命令
在 CMD 中你可以使用单行命令运行 Docker。这里是调整后的命令适合在 Windows CMD 中运行
docker run -d --name anythingllm --add-hosthost.docker.internal:host-gateway --env STORAGE_DIR/app/server/storage --health-cmd /bin/bash /usr/local/bin/docker-healthcheck.sh || exit 1 --health-interval 60s --health-start-period 60s --health-timeout 10s -p 3001:3001/tcp --restartalways --user anythingllm -v %STORAGE_LOCATION%:/app/server/storage -v %STORAGE_LOCATION%\.env:/app/server/.env -w /app mintplexlabs/anythingllm运行之后如下图会启动一个容器用一大串字母表示该字母是Docker 为该容器分配一个唯一的 ID这个 ID 主要用于在 Docker 系统中管理容器。你可以用这个 ID 来执行不同的 Docker 命令比如停止容器、查看容器日志、查看容器状态等。 查看当前所有的容器命令如下
docker ps可以看到我们已经成功启动一个容器
docker run 命令详细解析
给出的命令用于启动 AnythingLLM Docker 容器以下是对该命令中每个字段的详细解释
各部分的含义 docker run -d docker run 命令用于启动一个新的容器-d 表示容器将以“分离模式”后台运行启动。这样命令执行完后你可以继续在终端中操作。--name anythingllm 给容器指定一个名字 anythingllm。这个名字用来唯一标识容器可以方便地进行容器管理例如停止、重启、删除容器等。--add-hosthost.docker.internal:host-gateway 添加一个额外的主机名解析。在 Docker 容器内通过 host.docker.internal 可以访问宿主机的网络接口这对于需要连接到宿主机的服务比如本地运行的 ollama 服务非常有用。host-gateway 是指容器访问宿主机的网关地址。--env STORAGE_DIR/app/server/storage 设置容器内部的环境变量。STORAGE_DIR/app/server/storage 会将容器内部的存储目录设置为 /app/server/storage。该目录用于存储 AnythingLLM 的数据如模型、日志等。--health-cmd /bin/bash /usr/local/bin/docker-healthcheck.sh || exit 1 设置容器的健康检查命令。docker-healthcheck.sh 是一个用于检查容器健康状态的脚本。它会定期运行确保容器的正常工作。如果健康检查失败即返回非零退出状态则 Docker 会认为容器不可用。--health-interval 60s 设置健康检查命令的执行间隔为 60 秒。即每 60 秒 Docker 会运行一次健康检查命令。--health-start-period 60s 设置容器启动后的健康检查延迟时间。即容器启动后Docker 会等待 60 秒再开始执行健康检查。--health-timeout 10s 设置健康检查命令的超时时间为 10 秒。如果健康检查命令在 10 秒内没有返回结果则认为健康检查失败。-p 3001:3001/tcp 映射容器内部的端口 3001 到宿主机的端口 3001。3001 是 AnythingLLM Web 界面的默认端口。在启动容器后你可以通过访问 http://localhost:3001 来访问 AnythingLLM。--restartalways 设置容器的重启策略。always 表示当容器停止运行时Docker 会自动重启该容器确保容器始终在后台运行。--user anythingllm 以指定的用户 anythingllm 来运行容器内的程序。此选项确保容器内的进程以指定的用户身份执行而不是使用默认的 root 用户。-v %STORAGE_LOCATION%:/app/server/storage 将宿主机的目录 %STORAGE_LOCATION% 挂载到容器内部的 /app/server/storage 目录。%STORAGE_LOCATION% 是之前在 CMD 中设置的环境变量指向容器存储数据的路径。这样容器内的数据会存储到宿主机的指定路径上容器重启后数据仍然保留。-v %STORAGE_LOCATION%\.env:/app/server/.env 将宿主机的 .env 文件位于 %STORAGE_LOCATION% 路径下挂载到容器内的 /app/server/.env 文件。.env 文件通常用于存储配置参数如 API 密钥、数据库配置等。这样容器启动时可以加载这些配置。-w /app 设置容器内的工作目录为 /app。这意味着容器内的程序将以这个目录作为默认工作目录。mintplexlabs/anythingllm 指定要运行的 Docker 镜像这里是 mintplexlabs/anythingllm它包含了 AnythingLLM 的所有必要文件和配置。 这条 Docker 命令启动了一个 AnythingLLM 容器并通过挂载宿主机的存储目录和 .env 文件使得容器能够持续存储数据并加载配置。容器以后台运行并提供 Web 服务可以通过 http://localhost:3001 访问应用。
5. 访问应用
成功运行该命令后你可以通过浏览器访问 http://localhost:3001 来进行初始配置。
http://localhost:3001选择ollama然后选择对应的大模型 选择team可以设置多用户登录 6. 配置环境
访问 http://localhost:3001 后进行相关配置如配置大语言模型LLM、向量数据库等。根据需要更新 .env 文件中的配置参数如 SERVER_PORT、OPEN_AI_KEY 等。
聊天设置
新建一个空间区然后聊天设置改为对应的模型到最下面进行确认 向量数据库
如果默认的效果不好向量数据库可以选择 精度优化 嵌入首选项
默认的也可以如果默认的解析知识库有问题也可以使用ollama提供的nomic-embed-text 添加知识库
点击工作区的上传按钮 打开如下界面然后上传对应的文档 移动到工作区然后进行保存和嵌入 成员管理
设置里面找到管理员-用户然后在右上角添加用户 可以为用户选择不同的角色。不同角色持有的权限是不同的
局域网内其他用户访问
首先查看部署本机的IPv4地址例如1.1.1.1 局域网内其他用户浏览器访问1.1.1.1:3001即可 如下图所示
这应该是几个常用的内容其他东西请自行研究
7. 总结
在 Windows CMD 中运行 Docker 命令的步骤如下
设置环境变量 STORAGE_LOCATION并确保该路径存在。创建必要的存储目录和 .env 文件。使用单行命令在 CMD 中运行 Docker 容器。通过浏览器访问 http://localhost:3001 进行初始化配置。