Docker部署Cups-Web网页打印机
始
- 很难遇到的一个不错的打印机项目,毕竟cups单用的话太丑了,配合web端完美正解。
- 有需要可以自部署。
项目地址:hanxi/cups-web
功能特点:
核心功能
- 远程打印:随时随地通过网页上传文件进行打印
多格式支持:
- PDF 文档
- 图片文件(JPG、PNG、GIF)
- Office 文档(docx、xlsx、pptx 等)自动转换为 PDF(基于 LibreOffice)
- 文本文件(txt)自动转换为 PDF
用户管理
- 多用户系统:支持管理员和普通用户两种角色
打印记录:完整的打印历史记录
管理后台
- 用户管理:创建、编辑、删除用户账号
- 打印记录查询:按用户、时间范围查询打印记录
系统设置:配置数据保留天数等
安全特性
- Session 认证:安全的会话管理机制
- CSRF 保护:防止跨站请求伪造攻击
密码加密:使用 bcrypt 加密存储用户密码
部署优势
- Docker 一键部署:使用 Docker Compose 快速启动
- 数据持久化:数据库和上传文件独立存储
- 易于维护:简洁的配置和管理界面
Docker部署:
services:
cups:
image: docker.1ms.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.1ms.run/hanxi/cups-web:latest
user: root
environment:
- SESSION_HASH_KEY=${SESSION_HASH_KEY}
- SESSION_BLOCK_KEY=${SESSION_BLOCK_KEY}
- SESSION_SECURE=${SESSION_SECURE}
- CUPS_HOST=cups:631
volumes:
- ./.data:/data
- ./.uploads:/uploads
ports:
- "1180:8080"
depends_on:
- cups
restart: unless-stopped
环境配置
- CUPS 管理员账号(用于管理打印机)
CUPSADMIN=admin
CUPSPASSWORD=your_cups_password - 如果使用 HTTPS,设置为 true
SESSION_SECURE=false
必要配置
- SESSION_HASH_KEY=your_hash_key_here
- SESSION_BLOCK_KEY=your_block_key_here
- 这里需要生成安全的密钥,可以发给AI让帮忙生成,这里必须生成密钥,否者web服务无法登录:
- 生成 SESSION_HASH_KEY
openssl rand -base64 32 | tr -d '\n'
- 生成 SESSION_BLOCK_KEY
openssl rand -base64 32 | tr -d '\n'
- 上一篇: 松声|廿六年·三月末·花满城
- 下一篇: 没有了


😍羡慕可以用上打印机……
要是公司的网,既有内网也有外网,家里能连上吗?