小铁1 发表于 2021-2-20 17:30:01

铁威马通过Docker容器实现Airprint 打印服务器功能

本教程可使您的铁威马变身打印服务器,使角落里的USB打印机变为网络打印机。由于Docker镜像(我使用的镜像文件为olbat/cupsd)可定制性高,可以很方便的安装驱动和软件,所以用铁威马系统的Docker容器,挂载NAS上的打印机,实现局域网打印机共享和移动打印需求。家里一台Win10台式机、两台Win7笔记本,一台华为Mate30手机均测试成功,最终实现局域网中的共享,包括手机、电脑无线共享打印,是一台真正的打印服务器。
使用环境:X86Nas 我的型号为f2-421;镜像为 olbat/cupsd ,一台非常老旧且嘎吱嘎吱响的HP LaserJet 1022。安装完成后在win10 ,笔记本电脑、手机上均测试通过 。使USB打印机立马成为网络打印机。
先发一张图片: 点一根烟开始教程,本教程不敢保证为最优配置,但保证一定能成功,因为我一直就这样用着。
一、下载镜像文件
1、docker pull olbat/cupsd:latest --下载最新版本的olbat/cupsd(不到一分钟左右,没啥可说的)

二、新建三个挂载文件夹,结构为:
/mnt/md0/appdata/docker/airprint
/mnt/md0/appdata/docker/airprint/config
/mnt/md0/appdata/docker/airprint/avahi 三、开始运行镜像了 这一步很关键,我下面解释一下,为了让大家看清楚命令行,我上传一张图片!
docker run -d --name=airprint --net="host" --privileged=true -e TZ="Asia/Shanghai" -p 631:631 -v /mnt/md0/appdata/docker/airprint/config/:/config -v /dev:/dev -v /mnt/md0/appdata/docker/airprint/avahi/:/etc/avahi/services -v /var/run/dbus:/var/run/dbus olbat/cupsd 上面容器名为airprint,网络为host(不要使用bridge),端口为631 用户名和密码均为默认的print(记下来,一会儿要用)
查看一下容器运行情况,可以看到已可以正常运行了!
四、在浏览器中运行(注意要用https://来访问)
https://Nas ip:631 看到可以访问了设置页面了,实际上教程到这里已经完了,因为下面的就是安装打印机驱动了,windonw共享啊什么的,没什么可说的了,但为了教程的完整性,我继续!!在来一根烟吧!
五、开始增加打印机,点击界面上的Administration,再点击Add print 输入密码,这里的用户名和密码均为print(小写)。可以看到系统已经发现打印机了(我这里是使用的一台HP LaserJet 1022)。我们选择USB的打印机,点击继续。 六、把打印机的描述、位置、名字填写上,最后记得勾选共享这台打印机就可以了。 七、驱动系统已帮我们选出,选择后点击增加打印机 八、然后再次对打印机进行设置,这里要注意的是打印机的纸张一定要选择对,要不然会出现一些莫名其妙的问题!我这里选择的是A4 九、设置完毕,打印测试页,正常运行! 十、在Windows上连接共享打印机(以win10为例),在控制面板中点击添加打印机,选择我需的打印机未列出,单击按名称选择打印机,这里要输入的地址就是Web页上的地址http://192.168.3.101:631/printers/HP_LaserJet_1022(注意这里不能用https),点击下一步。 十一、这一步要安装驱动程序,Win10的驱动比较全,直接选择就可以了。 十二、查看打印机已安装成功,打印测试页,可以正常打印。无线笔记本连接也正常,台式机有线连接的也正常! 十三、手机共享打印机,打印正常! 到这里为至,打印机共享已全部安装完毕,测试正常,无线连接、手机连接,都可以正常打印,在这里要注意的是:
1、本连接共享使用的端口为631。
2、在使用网页安装打印机时使用的是https://Nas ip:631,(使用http://Nas ip:631访问也能安装打印机,但共享后不能打印,不知为何),但在使用Windows共享连接时要用http://。
3、运行docker镜像时网络要选择host
4、增加打印机时使用的用户名和密码均为print
为什么使用这个镜像olbat/cupsd,因这个镜像的驱动特别的全!

lxryz8 发表于 2021-2-25 09:23:53

楼主辛苦了,谢谢分享!

Gfron 发表于 2021-2-25 14:12:34

感谢分享

冰冷聚星 发表于 2021-3-10 20:00:17

youthghost 发表于 2021-4-8 16:57:14

这个教程真费烟#pao30#

im1989 发表于 2021-6-19 06:03:43

页: [1]
查看完整版本: 铁威马通过Docker容器实现Airprint 打印服务器功能