
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
https://img.shields.io/docker/pulls/hanxi/cups-web?style=flat-square&logo=docker](https://hub.docker.com/r/hanxi/cups-web) https://img.shields.io/github/stars/hanxi/cups-web?style=flat-square&logo=github](https://github.com/hanxi/cups-web) https://img.shields.io/github/license/hanxi/cups-web?style=flat-square](LICENSE)
这是一个功能完善的网页版打印机管理工具。它允许你通过浏览器远程控制打印机,支持多用户管理、打印记录追踪等功能,轻松实现家庭或小型办公室的打印管理需求。
|
文件上传 |
打印机 |
|
预览 |
管理后台 |
你可以选择以下两种方式部署:
bashmkdir cups-web cd cups-web
创建 docker-compose.yml 文件,内容如下:
yamlservices: cups: image: docker.xuanyuan.run/hanxi/cups:latest user: root environment: - CUPSADMIN=${CUPSADMIN} - CUPSPASSWORD=${CUPSPASSWORD} ports: - "631:631" devices: - /dev/bus/usb:/dev/bus/usb volumes: - ./.etc:/etc/cups restart: unless-stopped web: image: docker.xuanyuan.run/hanxi/cups-web:latest user: root environment: - CUPS_HOST=cups:631 volumes: - ./.data:/data - ./.uploads:/uploads ports: - "1180:8080" depends_on: - cups restart: unless-stopped
或者直接下载:
bashwget https://raw.githubusercontent.com/hanxi/cups-web/main/docker-compose.yml
创建 .env 文件并配置以下环境变量:
bash# CUPS 管理员账号(用于管理打印机) CUPSADMIN=admin CUPSPASSWORD=your_cups_password
bashdocker-compose up -d
访问 CUPS 管理界面配置打印机:
http://localhost:631
使用 .env 中配置的 CUPSADMIN 和 CUPSPASSWORD 登录,然后添加你的打印机。
提示:建议根据打印机型号安装合适的驱动程序。
打开浏览器访问:
http://localhost:1180
默认管理员账号:
adminadmin⚠️ 重要:首次登录后请立即修改默认密码!
如果你已经有 CUPS 服务运行,可以直接下载二进制文件运行 Web 服务。
从 https://github.com/hanxi/cups-web/releases 下载适合你平台的二进制文件:
| 平台 | 架构 | 文件名 |
|---|---|---|
| Linux | amd64 | cups-web-linux-amd64 |
| Linux | arm64 | cups-web-linux-arm64 |
| macOS | amd64 | cups-web-darwin-amd64 |
| macOS | arm64 | cups-web-darwin-arm64 |
| Windows | amd64 | cups-web-windows-amd64.exe |
bash# 示例:下载 Linux amd64 版本 wget https://github.com/hanxi/cups-web/releases/download/master/cups-web-linux-amd64 chmod +x cups-web-linux-amd64
二进制文件不会自动加载 .env 文件,你需要手动设置环境变量:
bash# CUPS 服务地址(必填) export CUPS_HOST=localhost:631 # 数据目录(可选,默认当前目录) export DB_PATH=./data/cups-web.db export UPLOAD_DIR=./uploads # 监听地址(可选,默认 :8080) export LISTEN_ADDR=:8080
或者使用 env 命令临时设置:
bashCUPS_HOST=localhost:631 DB_PATH=./data/cups-web.db ./cups-web-linux-amd64
bash./cups-web-linux-amd64
打开浏览器访问:
http://localhost:8080
默认管理员账号:
adminadmin⚠️ 重要:首次登录后请立即修改默认密码!
管理员(Admin)
普通用户(User)
支持的文件格式
| 格式类型 | 支持的扩展名 | 说明 |
|---|---|---|
.pdf | 直接打印 | |
| 图片 | .jpg, .jpeg, .png, .gif | 自动转换为 PDF |
| Office | .docx, .xlsx, .pptx, .doc, .xls, .ppt | 通过 LibreOffice 转换为 PDF |
| 文本 | .txt | 自动转换为 PDF |
打印流程
打印记录
用户可以查看自己的打印历史,包括:
用户管理
创建用户:
编辑用户:
删除用户:
打印记录查询
管理员可以:
系统设置
数据保留天数:
Web 服务配置
| 变量名 | 说明 | 默认值 | 必填 |
|---|---|---|---|
LISTEN_ADDR | Web 服务监听地址 | :8080 | 否 |
DB_PATH | SQLite 数据库文件路径 | /data/cups-web.db | 否 |
UPLOAD_DIR | 上传文件存储目录 | /uploads | 否 |
CUPS_HOST | CUPS 服务地址 | localhost | 否 |
CUPS 服务配置
| 变量名 | 说明 | 默认值 | 必填 |
|---|---|---|---|
CUPSADMIN | CUPS 管理员用户名 | - | 是 |
CUPSPASSWORD | CUPS 管理员密码 | - | 是 |
默认的 docker-compose.yml 配置:
631(用于管理打印机)1180(用于访问 Web 界面)./.data:数据库文件./.uploads:上传的文件./.etc:CUPS 配置文件如需修改端口,编辑 docker-compose.yml:
yamlservices: web: ports: - "你的端口:8080" # 修改左侧端口号
配置反向代理(如 Nginx)处理 HTTPS:
nginxserver { listen 443 ssl; server_name your-domain.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; location / { proxy_pass http://localhost:1180; 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; } }
定期备份以下目录:
bash# 备份数据库 cp ./.data/cups-web.db /backup/location/ # 备份上传文件 tar -czf uploads-backup.tar.gz ./.uploads/ # 备份 CUPS 配置 tar -czf cups-config-backup.tar.gz ./.etc/
对于大量用户场景,建议:
docker exec 进入 CUPS 容器安装驱动如果忘记管理员密码,可以通过以下方式重置:
bash# 停止服务 docker-compose down # 删除数据库(会清空所有数据) rm ./.data/cups-web.db # 重新启动服务(会创建新的 admin/admin 账号) docker-compose up -d
docker-compose restart cups可能的原因:
解决方法:
bash# 查看 Web 服务日志 docker-compose logs -f web # 查看 CUPS 服务日志 docker-compose logs -f cups
查看 https://github.com/hanxi/cups-web/releases 了解版本更新历史。
欢迎提交 Issue 和 Pull Request!
本项目采用 MIT 许可证。详见 LICENSE 文件。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务