## 使用 docker-compose 部署 创建docker-compose.yml openwebui的源码:[_github_](https://github.com/open-webui/open-webui) openwebui的官方文档:[_doc_](https://docs.openwebui.com/tutorials/integrations/https-nginx) ```yaml 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 ``` - - - ```autohotkey 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` 中的数据。 ``` 配置完成后运行拉取镜像 ```bash docker-compose up -d #小知识,如果文件夹下有多个compose文件或者命名不同,可以指定运行 docker-compose -f docker-compose-openwebui.yml up -d ``` **现在你就可以通过http\://你的ip+端口访问openwebui了**