Docker 部署 Pansou 网盘搜索 🐳
📋 目录导航
🎯 项目简介
[Pansou 是一个高性能的网盘资源搜索 API 服务,支持 TG 搜索和自定义插件搜索。通过 Docker 部署,可以快速搭建个人或团队使用的文件搜索服务。🌟
🛠️ 核心特性
特性类别 |
功能描述 |
优势 |
🔍 高性能搜索 |
采用并发执行多个频道及异步插件搜索的方式 |
显著提升搜索速度,高效处理并发任务 |
📁 多网盘支持 |
支持百度网盘、阿里云盘、夸克网盘、天翼云盘等主流网盘 |
统一访问多个网盘资源,自动识别并按类型分类 |
🧠 智能排序 |
基于插件等级、时间新鲜度和优先关键词的多维度综合排序算法 |
让优质、新鲜且符合需求的资源优先展示 |
🔌 插件系统 |
支持通过插件扩展搜索来源,采用异步搜索模式 |
灵活扩展搜索源,解决某些搜索源响应时间长的问题 |
💾 二级缓存 |
运用分片内存 + 分片磁盘缓存机制 |
提升重复查询速度和并发性能 |
🐳 容器化部署 |
Docker 集成,前后端一键启动 |
开箱即用,部署简单快捷 |
🐳 一、Docker 部署 Pansou
1. 创建部署目录和 docker-compose.yml
文件 📁
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| mkdir -p /vol1/1000/compose/pansou && cd $_ && \ cat > docker-compose.yml <<'EOF' services: pansou: image: ghcr.io/fish2018/pansou-web:latest container_name: pansou restart: unless-stopped ports: - "8110:80" volumes: - ./data:/app/data - ./logs:/app/logs environment: - TZ=Asia/Shanghai - DOMAIN=localhost - PANSOU_PORT=8110 - PANSOU_HOST=0.0.0.0 healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8110/api/health"] interval: 30s timeout: 10s retries: 3
volumes: data: driver: local EOF
|
2. 拉取镜像并启动容器 🚀
🚀 二、使用 Pansou
1. 访问 Web 界面 🌐
部署完成后,通过以下方式访问:
- 本地访问:
http://localhost:8110
- 域名访问:
https://pansou.example.com
(配置反向代理后)
2. 基本搜索操作 🔍
操作 |
说明 |
示例 |
🔍 关键词搜索 |
在搜索框中输入想要查找的资源关键词 |
“电影名称”、”软件名称”等 |
📁 结果筛选 |
按网盘类型筛选搜索结果 |
百度网盘、阿里云盘、夸克网盘等 |
🔗 链接访问 |
点击搜索结果中的链接访问资源 |
自动显示提取码(如有) |
📊 状态查看 |
查看系统状态和插件运行情况 |
通过状态界面监控系统健康度 |
🌐 三、Nginx 反向代理配置
访问地址示例:https://pansou.example.com
1. 创建 Nginx 配置文件 🔧
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| mkdir -p /etc/nginx/conf.d && \ cat > /etc/nginx/conf.d/pansou.conf <<'EOF' server { listen 443 ssl; listen [::]:443 ssl; http2 on;
server_name pansou.example.com;
ssl_certificate /etc/nginx/ssl/cert.pem; ssl_certificate_key /etc/nginx/ssl/key.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384; ssl_prefer_server_ciphers off;
add_header Strict-Transport-Security "max-age=31536000" always; add_header X-Content-Type-Options nosniff always; add_header X-Frame-Options SAMEORIGIN always; add_header X-XSS-Protection "1; mode=block";
location / { proxy_pass http://localhost:8110; 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; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_connect_timeout 300s; proxy_send_timeout 300s; proxy_read_timeout 300s; }
error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; internal; } } EOF
|
2. 测试并重载 Nginx 🔄
1
| sudo nginx -t && sudo systemctl reload nginx
|
🔧 四、容器维护命令
1. Docker Compose 命令 🐳
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| cd /path/to/your/project
docker-compose down
docker-compose pull
docker-compose up -d
docker-compose up -d <service_name>
docker-compose ps
docker-compose logs
docker-compose logs -f
docker-compose logs <service_name>
docker-compose down && \ docker-compose pull && \ docker-compose up -d && \ docker image prune -f
|
2. Docker 容器命令 📦
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| docker ps -a --format "{{.Names}}"
docker ps
docker stop <container_name> docker start <container_name> docker restart <container_name>
docker rm <container_name> docker rm -f <container_name>
docker exec -it <container_name> sh docker exec -it <container_name> bash
docker exec -u 0 -it <container_name> sh
docker exec <container_name> ls -la
docker inspect <container_name> docker stats <container_name>
docker logs <container_name> docker logs -f <container_name> docker logs --tail 100 <container_name> docker logs -t <container_name>
docker inspect --format='{{.State.Health.Status}}' pansou
|
3. Docker 镜像管理 📀
1 2 3 4
| docker images docker rmi <image_name:tag> docker image prune -f docker image prune -a -f
|
🌟 启航搜索,资源无限
通过本文档,你已经成功使用 Docker 部署了 Pansou 网盘搜索服务,并借助 Nginx 反向代理实现了安全便捷的远程访问。现在,你可以:
🔍 高效检索 快速定位全网盘资源,智能排序让优质内容优先呈现
🌐 多源聚合 一站式搜索多个主流网盘,避免平台间来回切换的繁琐
⚡ 极速响应 基于高性能架构和缓存机制,享受毫秒级的搜索体验
搜索之路,是一场与信息资源相伴的发现旅程。愿 Pansou 成为你高效的搜索助手,陪伴你在每一次资源寻找和信息获取的重要时刻。
从现在开始,智能搜索,资源无忧——构建你高效便捷的资源发现平台吧!🚀
📌 持续迭代:建议关注 Pansou 官方更新,及时获取新功能与优化。
🐛 反馈与互助:使用中如有疑问或建议,可前往 GitHub Issues 提出。
祝你搜索顺利,资源丰富!🎉