Ubuntu使用docker安装Open WebUI:修订间差异
跳转到导航
跳转到搜索
无编辑摘要 |
无编辑摘要 |
||
| 第77行: | 第77行: | ||
</source> | </source> | ||
=== 5. 创建nginx配置文件 === | |||
server { | |||
server_name ai.xx.xx; | |||
location / { | |||
proxy_pass http://localhost:3000; | |||
proxy_set_header Host $host; | |||
proxy_set_header X-Real-IP $remote_addr; | |||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | |||
proxy_set_header X-Forwarded-Proto $scheme; | |||
# WebSocket 支持 | |||
proxy_http_version 1.1; | |||
proxy_set_header Upgrade $http_upgrade; | |||
proxy_set_header Connection "upgrade"; | |||
proxy_read_timeout 86400; | |||
} | |||
listen 443 ssl; # managed by Certbot | |||
ssl_certificate /etc/letsencrypt/live/ai.xx.xx/fullchain.pem; # managed by Certbot | |||
ssl_certificate_key /etc/letsencrypt/live/ai.xx.xx/privkey.pem; # managed by Certbot | |||
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot | |||
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot | |||
} | |||
server { | |||
if ($host = ai.xx.xx) { | |||
return 301 https://$host$request_uri; | |||
} # managed by Certbot | |||
listen 80; | |||
server_name ai.xx.xx; | |||
return 404; # managed by Certbot | |||
} | |||
2026年6月22日 (一) 09:46的版本
1. 确保Docker和Docker Compose已安装
检查Docker是否已安装
docker --version
docker compose version如果未安装,可以参考之前的教程先安装Docker。
2. 创建Gitea工作目录
创建一个干净的目录,所有Gitea相关文件都会放在这里
mkdir -p ~/openwebui
cd ~/openwebui这个 ~/openwebui目录就是未来迁移时需要整体打包的目录。
3. 创建docker-compose.yml
使用以下命令创建配置文件:
bash
nano docker-compose.yml粘贴以下内容:
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
restart: unless-stopped
ports:
- "3000:8080" #服务器端口:docker内端口
volumes:
- ./data:/app/backend/data
# environment:
# --- 根据你的情况选择配置,不需要的可以删除或注释掉 ---
# 方案一:连接远程 Ollama 服务(推荐)
# - OLLAMA_BASE_URL=http://192.168.1.100:11434 # 替换为你的 Ollama 服务器 IP
# 方案二:使用 OpenAI 兼容 API(如 DeepSeek)
# - OPENAI_API_BASE_URL=https://api.deepseek.com/v1
# - OPENAI_API_KEY=sk-你的密钥
# 可选:如果你不想注册登录,开启单用户模式
# - WEBUI_AUTH=False
# ...(端口、环境变量等)
# Compose 原生支持,不需要任何额外参数
mem_limit: 256m # 硬上限 256MB
cpus: '0.5' # 最多用半个核4. 下载镜像并启动
下载镜像:
docker pull ghcr.io/open-webui/open-webui:main启动(上一步其实可省略,启动时应该也会自动下载):
$ docker compose up -d
[+] up 2/2
✔ Network openwebui_default Created 0.2s
✔ Container open-webui Started5. 创建nginx配置文件
server {
server_name ai.xx.xx;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# WebSocket 支持
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
}
listen 443 ssl; # managed by Certbot ssl_certificate /etc/letsencrypt/live/ai.xx.xx/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/ai.xx.xx/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = ai.xx.xx) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80; server_name ai.xx.xx; return 404; # managed by Certbot
}