2.9 KiB
2.9 KiB
使用 docker-compose 部署
创建docker-compose.yml
openwebui的源码:github
openwebui的官方文档:doc
version: '3.8'
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3030:8085"
volumes:
- /www/server/openwebui:/app/backend/data
restart: always
volumes:
- /www/server/openwebui:/app/backend/data
environment:
- 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
restart: unless-stopped
dockercompos配置文件的解释
version: '3.8'
# 定义 Compose 文件的版本,这里使用的是 3.8 版本。
services:
# 这里定义了你容器中的服务。每一个服务都会启动一个容器。
open-webui:
# 服务的名称,这里定义的是 `open-webui` 服务。
image: ghcr.io/open-webui/open-webui:main
# 使用的镜像名称。此镜像位于 GitHub Container Registry,标签是 `main`。
container_name: open-webui
# 容器的名称,这里指定了容器的名称为 `open-webui`。
environment:
# 这里是环境变量配置,传递给容器内部。
- OPENAI_API_KEY= openai的api key # 设置 `OPENAI_API_KEY` 环境变量,用于容器内的应用程序访问 OpenAI API。需要将 `openai的api key` 替换为实际的 OpenAI API 密钥。
ports: # 定义主机端口和容器端口的映射。
- "3000:8080" # 这表示将宿主机的 3000 端口映射到容器内的 8080 端口。即访问宿主机的 `http://localhost:3000` 时,流量将转发到容器内的 8080 端口。
volumes: # 定义持久化数据的卷。这里是将宿主机的卷 `open-webui` 挂载到容器内的 `/app/backend/data` 目录。
- open-webui:/app/backend/data
# 持久化数据存储卷,`open-webui` 是卷的名称。数据将存储在宿主机的 Docker 卷中,容器重新启动时数据会保留。
restart: always
# 设置容器的重启策略。当容器停止时,Docker 会自动重新启动它。`always` 表示只要容器停止,它都会自动重启。
volumes:
# 这里定义了持久化存储的卷。
open-webui:
# 定义一个卷 `open-webui`,这是一个 Docker 卷,在宿主机和容器之间共享数据。这个卷会用于存储容器 `/app/backend/data` 中的数据。
配置完成后运行拉取镜像
docker-compose up -d
#小知识,如果文件夹下有多个compose文件或者命名不同,可以指定运行
docker-compose -f docker-compose-openwebui.yml up -d
现在你就可以通过http://你的ip+端口访问openwebui了