最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

AnythingLLM的Docker使用方式

 更新時(shí)間:2025年02月18日 08:44:22   作者:myepicure888  
文章介紹了如何使用AnythingLLM的Docker鏡像,并提供了一些生成和自定義Docker鏡像的詳細(xì)步驟,包括下載代碼、構(gòu)建鏡像和啟動(dòng)容器

AnythingLLM的Docker使用

AnythingLLM是使用大語(yǔ)言模型LLM的一站式簡(jiǎn)便框架。

官網(wǎng)的介紹如下:

AnythingLLM is the easiest to use, all-in-one AI application that can do RAG, AI Agents, and much more with no code or infrastructure headaches.

1. 使用官方docker

最方便的方法是使用 docker.

1.1 拉取鏡像

docker pull mintplexlabs/anythingllm

1.2 創(chuàng)建db目錄和配置文件

  • Linux:
export STORAGE_LOCATION=/var/lib/anythingllm && \
mkdir -p $STORAGE_LOCATION && \
touch "$STORAGE_LOCATION/.env"
  • Windows:
$env:STORAGE_LOCATION="$HOME\Documents\anythingllm"; `
If(!(Test-Path $env:STORAGE_LOCATION)) {New-Item $env:STORAGE_LOCATION -ItemType Directory}; `
If(!(Test-Path "$env:STORAGE_LOCATION\.env")) {New-Item "$env:STORAGE_LOCATION\.env" -ItemType File}; 

1.3 運(yùn)行docker

docker run -d \
 --name anythingllm \
 --add-host=host.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 \
 --restart=always \
 --user anythingllm \
 -v ${STORAGE_LOCATION}:/app/server/storage \
 -v ${STORAGE_LOCATION}/.env:/app/server/.env \
 -w /app \
 mintplexlabs/anythingllm

--add-host 配置是為了訪問(wèn)同臺(tái)機(jī)器上的ollama服務(wù)。

1.4 訪問(wèn) http://localhost:3001 進(jìn)行初始配置,最好配置團(tuán)隊(duì),可以進(jìn)行權(quán)限控制

  • 可以配置大語(yǔ)言模型LLM、向量模型、向量數(shù)據(jù)庫(kù)等等。
  • 完成后查看 .env 文件,如下(因人而異):
SERVER_PORT=3001
JWT_SECRET="my-random-string-for-seeding" # Please generate random string at least 12 chars long.
STORAGE_DIR="/var/lib/anything"
OPEN_AI_KEY=""

LLM_PROVIDER='ollama'
OLLAMA_BASE_PATH='http://localhost:11434'
OLLAMA_MODEL_PREF='llama3-64k:latest'
OLLAMA_MODEL_TOKEN_LIMIT='4096'

EMBEDDING_ENGINE='native'
VECTOR_DB='lancedb'

1.5 訪問(wèn)api

  • http://localhost:3001/api/docs/可以查看已有的API接口。
  • 在設(shè)置里生成APIKEY,客戶端編程通過(guò)這個(gè)Key來(lái)訪問(wèn)接口。

1.6 一個(gè)好用的小工具get_command_4_run_container

  • 查看運(yùn)行容器的啟動(dòng)命令參數(shù)
docker pull cucker/get_command_4_run_container
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock cucker/get_command_4_run_container [容器名稱]/[容器ID]

2. 生成自己的docker鏡像

如果想要有更多的自主和控制,比如加一些api接口。

2.1 下載代碼

git clone https://github.com/Mintplex-Labs/anything-llm.git

2.2 Windows下生成鏡像

進(jìn)入代碼目錄anything-llm, 執(zhí)行命令

docker build -f ./docker/Dockerfile -t anythingllm:my_1.0 .

如果中間超時(shí)報(bào)錯(cuò)了可以多跑幾次,因?yàn)闀?huì)訪問(wèn)github下載一些依賴的東西,而我們?cè)L問(wèn)github是不穩(wěn)定的, 如果你有代理服務(wù)就最好了。

2.3 Ubuntu下生成鏡像

  • 這里遇到不少問(wèn)題,開(kāi)始不管是用docker build還是docker-compose build都報(bào)錯(cuò)。
  • 后來(lái)研究./docker/Dockerfile 文件才發(fā)現(xiàn),它是支持多平臺(tái)編譯的。
  • 為什么在Windows下沒(méi)有問(wèn)題呢,原因是我Windows下用的是Docker Desktop,而它自帶buildx工具,會(huì)自動(dòng)識(shí)別當(dāng)前系統(tǒng)平臺(tái)。

2.3.1 安裝工具buildx

  • 下載:
export BUILDX_VERSION=$(curl -s https://api.github.com/repos/docker/buildx/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")')
curl -LO https://github.com/docker/buildx/releases/download/${BUILDX_VERSION}/buildx-${BUILDX_VERSION}.linux-amd64
  • 安裝:
mkdir -p ~/.docker/cli-plugins
mv buildx-${BUILDX_VERSION}.linux-amd64 ~/.docker/cli-plugins/docker-buildx
chmod +x ~/.docker/cli-plugins/docker-buildx
  • 查看版本號(hào):
docker buildx version
  • 使用,這個(gè)工具也是個(gè)docker:
docker buildx create --use
docker buildx inspect --bootstrap

2.3.2 生成鏡像,使用buildx指定platform

docker buildx build --platform linux/amd64 --build-arg ARG_UID=1000 --build-arg ARG_GID=1000 -f ./docker/Dockerfile  -t anythingllm:my_1.0 --load --output type=docker .

2.3.3 啟動(dòng)命令和上面的類似

  • a. 創(chuàng)建本地store目錄
mkdir /var/lib/anythingllm-my
  • b. 創(chuàng)建db和env配置文件
cd /var/lib/anythingllm-my
mkdir logs
touch anythingllm.db
touch .env
chown 1000:1000 /var/lib/anythingllm-my/ -R

這里要注意的是一定要給目錄/var/lib/anythingllm-my修改owner(最后一條命令),不然docker啟動(dòng)會(huì)失敗,報(bào)寫readonly db的錯(cuò)誤。

  • c. 啟動(dòng)docker,不建議用docker-compose,
export STORAGE_LOCATION=/var/lib/anythingllm-my &&
docker run -d \
 --name anythingllm-my \
 --add-host=host.docker.internal:host-gateway \
 --env STORAGE_DIR=/app/server/storage \
 -p 3001:3001/tcp \
 --restart=always \
 --user anythingllm \
 -v ${STORAGE_LOCATION}:/app/server/storage \
 -v ${STORAGE_LOCATION}/.env:/app/server/.env \
 -v ${STORAGE_LOCATION}/logs:/app/server/logs/ \
 -w /app \
 anythingllm:my_1.0

修改了文件./docker/docker-entrypoint.sh如下,增加了輸出服務(wù)端log:

#!/bin/bash
{
  cd /app/server/ &&
    npx prisma generate --schema=./prisma/schema.prisma &&
    npx prisma migrate deploy --schema=./prisma/schema.prisma &&
    node /app/server/index.js &> /app/server/logs/server.log
} &
{ node /app/collector/index.js; } &
wait -n
exit $?

有了自己的鏡像,后面你可以自主修改代碼了??!

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Docker初級(jí)網(wǎng)絡(luò)端口映射的配置

    Docker初級(jí)網(wǎng)絡(luò)端口映射的配置

    這篇文章主要介紹了Docker初級(jí)網(wǎng)絡(luò)端口映射的配置,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • docker搭建devops(騰訊云輕量應(yīng)用服務(wù)器)教程

    docker搭建devops(騰訊云輕量應(yīng)用服務(wù)器)教程

    這篇文章主要為大家介紹了docker搭建devops(騰訊云輕量應(yīng)用服務(wù)器)教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • Docker中namespace隔離的實(shí)戰(zhàn)

    Docker中namespace隔離的實(shí)戰(zhàn)

    Namespace是Linux內(nèi)核的一個(gè)功能,用于隔離和管理系統(tǒng)資源,如進(jìn)程、網(wǎng)絡(luò)和文件系統(tǒng)等,通過(guò)創(chuàng)建隔離的命名空間,系統(tǒng)可以實(shí)現(xiàn)容器化和資源隔離,提高系統(tǒng)的安全性和穩(wěn)定性,這種技術(shù)廣泛應(yīng)用于Docker等容器技術(shù)中,本文就來(lái)介紹一下Docker中namespace隔離的實(shí)戰(zhàn)
    2024-11-11
  • docker-compose安裝Jenkins的實(shí)踐筆記

    docker-compose安裝Jenkins的實(shí)踐筆記

    jenkins是一個(gè)比較強(qiáng)大的自動(dòng)構(gòu)建工具, Jenkins是開(kāi)源CI&CD軟件領(lǐng)導(dǎo)者,提供超過(guò)1000個(gè)插件來(lái)支持構(gòu)建、部署、自動(dòng)化,本文給大家介紹docker-compose安裝Jenkins的實(shí)踐筆記,感興趣的朋友一起看看吧
    2021-09-09
  • 通過(guò)容器技術(shù)(docker)部署MySQL讀寫分離

    通過(guò)容器技術(shù)(docker)部署MySQL讀寫分離

    Mycat作為開(kāi)源數(shù)據(jù)庫(kù)中間件,在MySQL讀寫分離架構(gòu)中發(fā)揮核心作用,通過(guò)智能代理層實(shí)現(xiàn)讀寫請(qǐng)求的自動(dòng)路由、負(fù)載均衡與故障轉(zhuǎn)移,從而提高系統(tǒng)性能和可用性
    2026-01-01
  • Docker搭建ELK日志系統(tǒng),并通過(guò)Kibana查看日志方式

    Docker搭建ELK日志系統(tǒng),并通過(guò)Kibana查看日志方式

    這篇文章主要介紹了Docker搭建ELK日志系統(tǒng),并通過(guò)Kibana查看日志方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • docker添加網(wǎng)橋并設(shè)置ip地址范圍操作

    docker添加網(wǎng)橋并設(shè)置ip地址范圍操作

    這篇文章主要介紹了docker添加網(wǎng)橋并設(shè)置ip地址范圍操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • Docker部署verdaccio搭建npm私服的實(shí)現(xiàn)

    Docker部署verdaccio搭建npm私服的實(shí)現(xiàn)

    本女王主要介紹了Docker部署verdaccio搭建npm私服的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02
  • Docker 安裝 Neo4j 保姆級(jí)教程(最新整理)

    Docker 安裝 Neo4j 保姆級(jí)教程(最新整理)

    本文詳細(xì)介紹了如何在Windows和Linux環(huán)境下通過(guò)Docker安裝和配置 Neo4j圖數(shù)據(jù)庫(kù),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2025-10-10
  • 阿里云安裝docker全過(guò)程

    阿里云安裝docker全過(guò)程

    這篇文章主要介紹了阿里云安裝docker全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04

最新評(píng)論

甘肃省| 无锡市| 新丰县| 哈尔滨市| 孟连| 喀什市| 中方县| 云霄县| 柘荣县| 休宁县| 正蓝旗| 基隆市| 晴隆县| 商水县| 泸定县| 信丰县| 布尔津县| 杭锦旗| 平罗县| 伊宁市| 黄石市| 临沧市| 滁州市| 嘉峪关市| 建始县| 高安市| 舞阳县| 肇源县| 措勤县| 德清县| 长顺县| 闻喜县| 西华县| 卓尼县| 秦皇岛市| 得荣县| 大同县| 霍邱县| 中江县| 酉阳| 普陀区|