APP下载 微博 微信

Hao4K影音


[群晖] 低成本的无线打印:群晖上通过Docker容器实现Airprint

[复制链接]

发表于 2019年04月13日 18:13 93579 0 来源:媒体存储> 群晖 |只看大图 回帖奖励 |倒序浏览 |

txiao 帖主

2019-4-13 18:13

低成本的无线打印:群晖上通过Docker容器实现Airprint
               
                    群晖nas得益于高质量的软件设计和方便的使用体验深受家庭用户喜爱。随着使用场景的扩展,各种功能的发掘也随着需求的增长不断出现。打印虽然是个古老的话题了,但是对于有打印需求的用户来说,有些时候还真的离不开。于是利用群晖NAS配合低成本打印机,实现家庭(小型办公环境)打印机共享的方案深受欢迎。但是对于有无线打印需求的用户来说,如果打印机本身不带Airprint功能,那么有没有办法实现呢?前一段时间,我写了个利用群晖的虚拟机实现无线打印的文章,有些同学提出来,能不能利用Docker来实现。于是周末抽空玩了一下,把结果分享一下。方案描述
由于驱动支持的原因,有一部分打印机没有办法利用Synology内置的CUPS驱动实现AirPrint。但是Synology系统上没有很好的办法自定义驱动安装打印机。
由于Docker镜像可定制性高,可以很方便的安装自定义驱动和软件,所以利用Synology系统的Docker容器,挂载NAS上的打印机,实现局域网打印机共享,和移动设备打印需求。尤其是iOS,由于系统原因,很多无线打印都是通过安装第三方软件来实现。这个使用体验和系统原生支持的AirPrint还是有一些不同的。
  准备工作1. 打开系统的ssh服务,方便后续操作

13182235xeakllwpkoc.jpg

13182235xeakllwpkoc.jpg

2. 打开系统的Bonjour服务发现

13182235wgrk0q2yxfh.jpg

13182235wgrk0q2yxfh.jpg

3. 连接ssh。如果是Windows 10系统,可以安装一下ssh client或者使用其他软件如putty等
4. 停掉系统内置的CUPS服务,避免端口冲突
synoservicecfg--hard-stop cupsd
synoservicecfg --hard-stop cups-lpd
synoservicectl --stop cupsd
synoservicectl --stop cups-lpd5. 为Docker容器创建文件夹,方便储存配置文件:我这里创建了docker-aiprint,里面两个子文件夹如图

13182235uakafpfm4rr.jpg

13182235uakafpfm4rr.jpg

步骤1. 准备就绪之后,咱们就开始选docker镜像了,我这里选择的是:

13182235auxuyq4azx1.jpg

13182235auxuyq4azx1.jpg

13182235svickuyr12v.jpg

13182235svickuyr12v.jpg

也可以在ssh里面一步到位:
docker run -d --name=airprint
--net="host"
--privileged=true
-e "CUPS_USER_ADMIN"="admin"
-e "CUPS_USER_PASSWORD"="pass"
-e TZ="Asia/Shanghai"
-e HOST_OS="Synology"
-e "TCP_PORT_631"="631"
-v"/volume1/docker/airprint/config":"/config"
-v /dev:/dev
-v"/volume1/docker/airprint/avahi":"/etc/avahi/services"
-v /var/run/dbus:/var/run/dbus"mnbf9rca/cups-google-print"
备注:以手命令里面的"CUPS_USER_ADMIN"="admin"参数是CUPSD服务的管理页面账号,"CUPS_USER_PASSWORD"="pass"是密码。我这里保持默认,自己家用无所谓。

13182235fucsgxvucw5.jpg

13182235fucsgxvucw5.jpg

2. 命令执行完之后,容器已经运行了
3. 试一下登录管理页面:https://DSM的IP:631/admin/ 注意这里默认是https。

13182235l43qghjgggt.jpg

13182235l43qghjgggt.jpg

4. 添加打印机

13182235xbr4rfraywt.jpg

13182235xbr4rfraywt.jpg

打印机已经可以发现了

13182235mmb0gaw0fhi.jpg

13182235mmb0gaw0fhi.jpg

别忘记勾选共享

13182236erjf1mihwej.jpg

13182236erjf1mihwej.jpg

131822363lrwe3f05tw.jpg

131822363lrwe3f05tw.jpg

这一步的时候,如果找不到自己的打印机驱动,可以手动指定驱动。我的HP机器,可以去这里看看:
https://developers.hp.com/hp-linux-imaging-and-printing

13182236iq0f4zv2g1e.jpg

13182236iq0f4zv2g1e.jpg

13182236wahthcuf11q.jpg

13182236wahthcuf11q.jpg

我选择了默认A4纸,最佳打印质量

131822364fqvw5kyftd.jpg

131822364fqvw5kyftd.jpg

设置完后回到打印机这一页,可以看到打印机处于空闲状态

13182236j2s1fp23ygq.jpg

13182236j2s1fp23ygq.jpg

可以打印一个测试页

13182236er3fnyrylcz.jpg

13182236er3fnyrylcz.jpg

手机端打印测试

131822363qg2ihto1it.jpg

131822363qg2ihto1it.jpg

13182236ht1hniiep4e.jpg

13182236ht1hniiep4e.jpg

总结是不是很简单?资源占用明显比之前的虚拟机方案小太多了。

131822362jx2cn4spps.jpg

131822362jx2cn4spps.jpg

顺便附上CUPSD的配置文件,如果登录CUPSD管理页面有问题的,可以参考(重点是注释掉AuthType Default和添加Allow from all)。
Restrict access to the server...
管理页面
AuthType Default
#Require user @SYSTEM
Allow from all
Order deny,allow

其他位置酌情修改即可。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

返回列表 本版积分规则



绑定微信 + 关注公众号,第一时间获得消息通知!
:
发烧刚入门
:
介绍未填写

主题

帖子

积分72

图文推荐

  • 极空间挂载阿里云、115、百度、夸克等20个

    理论上使用如下教实现程极空间可以挂载阿里云网盘

  • 搭建私有云—华芸AS6404T NAS+华硕 AC68U体

    帮朋友搭建私有云—华芸AS6404T NAS+华硕 AC68U体

  • NAS+IPTV+蓝光高清播放器?不到100块的斐讯

    NAS+IPTV+蓝光高清播放器?不到100块的斐讯N1了解

  • 科普:什么是硬盘MTBF?那MTTF、MTTD、MTTR

    买固态硬盘,我们会比较关注颗粒寿命,机械硬盘虽

  • 星际蜗牛安装黑裙(群晖)制作家用nas新手

    星际蜗牛安装黑裙(群晖)制作家用nas新手教程NO.

  • 机械硬盘该怎么选?教你最全机械硬盘选购指

    机械硬盘该怎么选?教你最全机械硬盘选购指南

  • 家庭NAS+HTPC组建及注意事项(一)(内网穿

    原创篇一:家庭NAS+HTPC组建及注意事项(一)(内

  • 小量的影视、音频存储方案之我见

    最近,一块使用了近十年的4T移动硬盘挂了(曾被摔

  • NAS都有哪些品牌?带你了解几大NAS名牌介绍

    NAS都有哪些品牌?带你了解几大NAS名牌介绍 前

  • 入了极空间,从黑群晖到极空间谈谈区别

    之前用过黑群晖,现在改了极空间 1、为什么从

  • Hao4K影音app客户端下载