docker + dify + ollma 安装与配置
Docker安装
安装时,勾选Use WSL 2 instead of Hyper-V及Add shortkcut to deskktop 关闭 Docker Desktop。 下载当前 Docker Desktop 版本对应的 app-*.zip 汉化包并解压。 备份原文件,方便回滚: Windows: C:\Program Files\Docker\Docker\frontend\resources\app.asar Windows: C:\Program Files\Docker\Docker\frontend\resources\app.asar.unpacked Windows: C:\Program Files\Docker\Docker\frontend\Docker Desktop.exe 未检测到虚拟化支持 第一步:检查 BIOS 虚拟化是否开启 这是最基础的一步。 打开 任务管理器 (Ctrl + Shift + Esc) -> 性能 -> CPU。 查看右下角的 “虚拟化”: 如果显示 “已禁用”:必须重启电脑进入 BIOS 开启(Intel VT-x 或 AMD-V)。 如果显示 “已启用”:说明 BIOS 没问题,继续往下看(我就是这种情况)。 第二步:检查 Windows 功能是否配置 搜索并打开 “启用或关闭 Windows 功能”。 确保以下三项均已勾选: Hyper-V(及子项) Windows 虚拟机监控程序平台 (Virtual Machine Platform) 适用于 Linux 的 Windows 子系统 ( Windows Subsystem for Linux) 1. 选用国内镜像地址
Docker 引擎
{"builder":{"gc":{"defaultKeepStorage":"20GB","enabled":true}},"experimental":false,"registry-mirrors":["https://docker.xuanyuan.me"]}
2. 修改下载镜像的存储位置 设置 -> 资源 -> 磁盘镜像位置 Docker常用指令 重启docker: docker compose down && docker compose up -d
ping测试 docker run --rm busybox ping 192.168.0.125 -c 4 docker run --rm curlimages/curl curl -v -m 5 http://192.168.0.125:8881/api/test
内部访问:host.docker.internal
Dify安装
git clone https://github.com/langgenius/dify.git cd dify/docker cp .env.example .env docker compose up -d (可选)修改端口配置 .env文件 EXPOSE_NGINX_PORT=8080 EXPOSE_NGINX_SSL_PORT=8443 例如改为 8080,则后续通过 http://localhost:8080 访问 Dify
dify工作流中出现“同步数据中,只要几秒钟” 尝试以下方法后生效: 打开dify/docker/.env 1. 设置 ENABLE_COLLABORATION_MODE=false 2. NEXT_PUBLIC_SOCKET_URL=wss://<ip>:<端口号> 重启docker: docker compose down docker compose up -d dify访问http时提示:Access to 'http://localhost:8881/api/test' was blocked by SSRF protection. The URL may point to a private or local network address. 规则限定: 1. 80或443直接通信,端口要在 1025-65535 可放行,如36000 2. Dify HTTP 节点 ≠ 普通请求,默认走 Squid,Squid 默认禁止内网,必须手动放行(http://192.168.0.125:36000/api/test http://host.docker.internal:36000/api/test) 修改配置文件 /docker/ssrf_proxy/squid.conf.template 完整如下: include /etc/squid/dify_common.conf acl allowed_domains dstdomain .marketplace.dify.ai # ----- 新增自定义 ACL ----- acl my_internal_ip dst 192.168.0.125 acl Safe_ports port 81 # 将81加入安全端口列表(如果已有类似定义,请合并) # -------------------------- http_port ${HTTP_PORT} http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access allow localhost manager http_access deny manager include /etc/squid/dify_sandbox_proxy.conf include /etc/squid/dify_allow_private.conf # ===== 新增允许规则(放在 deny to_private_networks 之前) ===== http_access allow my_internal_ip # ===== 原有的拒绝规则 ===== http_access deny to_private_networks http_access allow allowed_domains http_access allow client_localnet http_access allow localhost http_access deny all 重启 SSRF 代理容器 D:\dify\dify-1.16.1\docker>docker ps -a | findstr ssrf 7734ac7d7584 ubuntu/squid:latest "sh -c 'cp /docker-e鈥? 10 minutes ago Up 10 minutes 3128/tcp docker-ssrf_proxy-1 FINDSTR: 写入错误 docker restart docker-ssrf_proxy-1 或 重启整个 Dify docker compose down && docker compose up -d
Ollam安装
更改安装位置 OllamaSetup.exe /DIR="d:\ollama" 增加环境变量 Path d:\ollama 增加环境变量 OLLAMA_MODELS d:\ollama\models 下载完成后测试 cmd -> Ollama 下载模型 https://ollama.com/search ollama run pppurpg/qwen34b 查看下载的模型 Ollama list 运行模型 Ollama run deepseek-r1:7b
qq:505645074

浙公网安备 33010602011771号