首页
推荐
INYES图床
网盘
Search
1
牛市股票三个买点战法
577 阅读
2
中兴光猫修改mac和sn
552 阅读
3
VSOL V2802RH 2.5g光猫设置
520 阅读
4
中兴3.0与4.0光猫开启telnet方法
418 阅读
5
12代CPU在PVE8.0系统下启用硬件直通及核显虚拟SR-IOV vGPU
369 阅读
网络笔记
黑群晖
教程类
Docker小天地
cups技术
登录
Search
记忆の风
累计撰写
82
篇文章
累计收到
2
条评论
首页
栏目
网络笔记
黑群晖
教程类
Docker小天地
cups技术
页面
推荐
INYES图床
网盘
搜索到
22
篇与
的结果
2022-09-19
群晖安装cups
CUPS介绍CUPS 是一个基于 WEB 的管理工具,可以管理我们打印机设备,它集成了市面上大多数打印机的驱动,那甭管你的打印机是否支持网络打印,搭建成功以后,我们都可以进行远程、本地、有线、以及无线的一些打印服务,类似于把你的古董打印机变为了一个支持 Airprint 的网络共享打印机。我们可以使用 iPhone、iPad、MacBook、安卓等一些移动设备、或是桌面的 PC 电脑(Windows),远程或是局域网共享来连接我们 CUPS,然后通过 CUPS 上面的共享打印机进行相关的打印任务。是不是很强大?准备工具为了方便,我们今天仅仅用群辉的方式介绍,其他的硬件方式雷同,采用 docker 的方式1、群辉(自行安装 Docker)、PVE、ESXi 软路由等可以经常在线的设备2、客户机一台,用于部署(只要能访问上述设备)3、老式的、要丢的、捡来的打印机一台部署 CUPS连接打印机开启打印机,并把打印机用 USB 线材连接需要部署 CUPS 的设备,确保 USB 正常 连接。开启群辉服务我们找到群辉:“控制面板” — “文件服务” — “高级设置” ,开启群辉自带的 Bonjour 服务关闭群辉服务群辉自带的打印服务,会占用端口,导致 CUPS 无法正常工作,我们需要禁用这类服务。我们找到群辉:“控制面板” — “终端机和 SNMP ” ,启用 SSH 功能(若是不能登录可以尝试在 高级设置 里面,把安全等级设置为低)命令行输入:sudo -i # 输入密码,取得 root 权限 synoservicecfg --hard-stop cupsd synoservicecfg --hard-stop cups-lpd synoservicectl --stop cupsd synoservicectl --stop cups-lpd 如上提示,群辉自带的打印服务也就 暂时 关闭了。群辉默认 开机自启 上述服务,为了以后不和 docker 冲突,我们可以设置如下开机自启命令我们找到群辉:“控制面板” — “计划任务 ”,点击 “新增” – “触发的任务” – “用户自定的脚本” – “常规”任务名称:(随意,自己晓得是啥就行)勾选已启动,因为我们刚才已经执行了(不勾也没事)找到 任务设置 – 运行命令 – 用户定义的脚本,贴入以下命令:synoservicecfg --hard-stop cupsd synoservicecfg --hard-stop cups-lpd synoservicectl --stop cupsd synoservicectl --stop cups-lpd用 Docker 部署 CUPS在群辉桌面找到 “File Station” — “docker ”,在该目录下面新建 airprint 文件夹,然后在 airprint 里面新建两个子文件夹 avahi 以及 config为了大家部署不出错误,可以直接 SSH 登录群辉,复制以下命令,直接运行。sudo -i #而后输入管理员密码,进而贴入下面命令docker run -d --name=airprint \ --net="host" \ --privileged=true \ -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 \ "olbat/cupsd"如下图所示:回到群辉,找到 docker 套件,找到容器,发现已经正常运行了。现在,可以访问 http://群辉IP:631 ,看到 CUPS 的 WEB 管理界面了。后面的添加打印机就很简单了,点击 Administration,输入默认的账号和密码print(均为它)添加打印机:Administration — Add Printer — Local Printers 里面勾选你的打印机,并点击 Continue输入共享打印机的名字、描述、角色,而后 勾选 Sharing:Shaer This Printer ,而后在 Model 里面找到你的打印机型号,点击下面的 Add Printer。后面的可以自己去翻译并设置了,后面的连接打印机等。文章摘自https://v2rayssr.com/airprint.html#%E7%94%A8_Docker_%E9%83%A8%E7%BD%B2_CUPS群晖7.1可以用的docker镜像2.1.3版本----7.2.2首选docker run \ -d \ --name=airprint \ --net=host \ --privileged=true \ -v /var/run/dbus:/var/run/dbus \ -v "/volume1/docker/airprint/config":"/config" \ -v "/volume1/docker/airprint/avahi":"/etc/avahi/services" \ --device /dev/bus \ --device /dev/usb \ -e CUPSADMIN="admin" \ -e CUPSPASSWORD="password" \ tigerj/cups-airprint1.7.1版本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"2.4.7版本docker run -d --name=airprint \ --net="host" \ --privileged=true \ -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 "olbat/cupsd"管理账号密码为:print/print7.1群晖系统直接修改/etc/cups/cupsd.conf将监听端口从631修改到其他不需要用到的端口,比如632,让它不要干扰我们Docker里面的CUPS工作,重启即可。==========================================================新版关闭默认cups命令synosystemctl stop cupsd
2022年09月19日
324 阅读
0 评论
0 点赞
2022-06-23
Docker搭建cups打印机服务器
1、Docker搭建脚本如下:X86机器脚本如下: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 "/airprint_data/config":"/config" -v /dev:/dev -v "/airprint_data/services":"/etc/avahi/services" -v /var/run/dbus:/var/run/dbus "mnbf9rca/cups-google-print"docker run \ --name=cups \ --restart=always \ --net=host \ --privileged=true \ -v /var/run/dbus:/var/run/dbus \ -v /airprint_data/config:/config \ -v /airprint_data/services:/services \ --device /dev/bus \ --device /dev/usb \ -e CUPSADMIN="admin" \ -e CUPSPASSWORD="password" \ tigerj/cups-airprint注释:root是后端账号,password是密码。后面步骤都一样,参考老版步骤,选择驱动,共享打印机,直到cups里能打印出测试页面。这时如果去电脑或者手机的打印服务里搜索打印机是搜索不到的。接下来执行命令docker exec cups service dbus start docker exec cups service avahi-daemon start执行之后去电脑或者手机系统自带的打印服务里搜索打印机,怎么样,是不是搜索到了?2、如何进容器里升级LSB{collapse}{collapse-item label="小技巧" open}看了下当前安装的docker容器是个简易的ubuntu,所以直接输入命令sudo docker exec -it docker容器id /bin/bash(docker容器id可以通过命令docker ps获得)就可以进入docker容器中。如果期间出现问题,输入sudo apt-get update 即可。{/collapse-item}{/collapse}我现在推荐的方法是直接用新建的容器名,如上面的“cups”,直接执行sudo docker exec -it cups /bin/bash省去了docker ps查询容器id。新建的容器首先执行sudo apt-get update然后sudo apt-get install lsb安装lsb。这个过程更加网速不同,安装需要大概20-30分钟左右。3、添加打印机驱动因为各个品牌打印机驱动不同,像佳能,有区分liunx32位,liunx64为,liunx arm64位等,下载的有区分debian跟centos(RPM)。像ubuntu就可以直接使用debian的驱动。只要先在docker里面wget XXXX.deb,然后再进行安装。sudo dpkg -i XXXX.deb如此便已经安装好驱动了。现在进入cups后端进行添加驱动吧。4、问题解答:打印机如果断电再开机, 发送打印任务就无法打印了,估计是容器识别不到打印机 必须重启cups。例如:(1)我家云装的是灯大的小钢炮系统,管理热插拔的是mdev, 解决方法是 利用mdev程序检测到打印机接入自动执行脚本让cups重启,在/etc/mdev.conf 文件的最底下添加一行usb/lp0 0:0 660 @/root/cupsstart.sh然后再在root目录里添加一个脚本名字 cupsstart.sh 内容#!/bin/sh docker restart cups保存后,把脚本文件的权限改成0777chmod 777 cupsstart.sh这样,mdev程序检测到打印机接入,就会触发执行脚本,脚本执行cups重启,很完美,无论cups容器有没有打开,只要打印机通电,容器都会启动或者重启。(PS:后来发现这段代码有个小瑕疵,会导致后面无法再添加新打印机,不过估计这不是问题,因为家里也就一台打印机,原因是,再添加打印机的时候会导致/dev/usb/lp0 这个节点重新挂载,从而触发脚本重启cups,导致添加打印机界面无法进入,这是个死循环,我找到了完美的解决方法)方法一:就是不用节点名字/usb/lp0来触发 改为打印机的型号参数 即用$PRODUCT=3f0/3b17/100 0:0 660 @/root/cupsstart.sh代替上面那行代码,此处3f0/3b17/100 是打印机的型号参数,可以执行lsusb命令查看。(2)如果你的设备是armbian系统的话估计要用udev实现开机重启cups(注意:此法只针对docker版cups,如果是原生armbian直装cups,应该不存在这些问题)在/etc/udev/rules.d目录下新建一条规则,如m1005.rules内容如下:ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_VENDOR_ID}=="03f0", ENV{ID_MODEL_ID}=="3b17", RUN+="/root/cupsstart.sh" ACTION=="remove", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="3f0/3b17/100", RUN+="/root/cupsstop.sh"注:"3f0/3b17/100"为打印机型号,需要自行更换。其中add段代码中的03f0 3b17 两个数据要跟你你的实际修改,这两个参数可以通过执行lsusb查看到然后在/root目录里建立两个脚本:cupsstart.sh和cupsstop.sh#!/bin/sh docker restart cups docker exec cups cupsaccept M1005 docker exec cups service dbus start docker exec cups service avahi-daemon start这个脚本实现系统一发现打印机接入,就重启cups容器,并设置打印机接受打印任务,另外将avahi服务启动起来。#!/bin/sh docker exec cups cupsreject M1005这个脚本是实现当打印机断电了,设置打印机拒绝打印任务,为什么要这么设置呢,因为打印机断电之后重新上电,cups会接受打印任务,但是却不打印,这时如果重启,重复发送的打印任务全部会打印出来,为了避免这种情况发生,需要在打印机断电之后设置cups拒绝打印任务。好了这样就完美实现,打印机上电自动启动cups,断电cups拒绝打印任务,并且完美支持airprint,安卓,ios,电脑都能直接搜索到打印机。(3)openwrt安装的docker, openwrt管理热插拔的是hotplug。先到目录/etc/hotplug.d/usb,里面有一个10-usb_printer的文件,打开后,修改里面的内容为:#!/bin/sh if [ x"$INTERFACE" = x"7/1/1" ] || [ x"$INTERFACE" = x"7/1/2" ]; then /usr/bin/usb_printer_hotplug "$PRODUCT" "$ACTION" fi sleep 10 /root/cupsstart.sh然后到/root目录添加脚本cupsstart.sh#!/bin/sh docker restart cups保存后,把脚本文件的权限改成0777chmod 777 cupsstart.sh注:N1等盒子使用的cups,多hp驱动,优先使用。docker run \ --name=cups \ --restart=always \ --net=host \ -v /var/run/dbus:/var/run/dbus \ -v /airprint_data/config:/config \ -v /airprint_data/services:/services \ --device /dev/bus \ --device /dev/usb \ -e CUPSADMIN="admin" \ -e CUPSPASSWORD="password" \ jysky007/cups:v1
2022年06月23日
184 阅读
0 评论
0 点赞
2022-06-23
Docker版本的H5ai
0. 关于镜像!> 此镜像目前仅仅是功能集成,未做任何安全性配置!如果需要进入镜像内部 (Linux Bash Shell),请参考下面的教程!1. 镜像说明此镜像基于 ilemonrain/lamp 作为母镜像,去除MySQL(要你有何用),极大程度精简了镜像体积,使得镜像拉取速度更快,占用资源更低。到目前为止。此镜像已经集成:一套LAP环境,包括:L:Alpine Linux 3.7.0A:Apache 2.4.29P:PHP 7.1.15h5ai 0.29.0 (已集成在Docker镜像中)Zip/Unzip (用于压缩包处理)(*)PHP-GD扩展 (用于显示照片缩略图)(*)PHP-EXIF扩展 (用于显示照片信息)(*)FFmpeg (用于显示视频缩略图)(*)Imagemagick (用于显示PDF缩略图)(*):这些功能仅包含于 ilemonrain/h5ai:full 镜像中。2. 使用方法启动命令行:docker run [-t/-d] -p [80]:80 -v [$PWD]:/h5ai --name h5ai ilemonrain/h5ai:[lite/full][-t/-d] :决定是以后台运行模式启动或是前台监控模式启动。示例:docker run -d -p 80:80 -d -v /home:/h5ai --name h5ai ilemonrain/h5ai:full推荐另一个容器docker run -d -p 20080:80 -v /volume1/docker/h5ai:/var/www --name h5ai clue/h5ai使用-d参数启动,镜像将不会输出任何日志到你的Console,直接以Daemon模式启动。Deamon模式启动下,可以使用docker logs h5ai令显示启动日志。使用-t参数启动,将会直接Attach你的镜像到你的Console,这个模式启动下,你可以直观的看到镜像的启动过程,适合于初次部署镜像,以及镜像Debug部署使用。你可以使用Ctrl+C将Docker镜像转入后台运行,使用docker attach h5ai命令显示启动日志。-p [80]:80: h5ai on Docker 需要映射的端口,方括号中端口可任意修改为你需要的端口-v $PWD:/h5ai: 映射目录,将会自动在选定的目录下创建h5ai程序目录(_h5ai)和Apache2必要的.htaccess文件,如果在在使用完成后不需要这两个文件,可以自行删除;如果需要映射当前目录(可以使用pwd命令确定),请直接输入 “$PWD”--name h5ai: Docker容器的名称,可以自行修改ilemonrain/h5ai:[lite/full]: 启动的镜像名称,请注意:如果你只是为了测试镜像,或者Docker宿主机所在网络环境不佳,请使用lite分支 (即 ilemonrain/h5ai , ilemonrain/h5ai:latest , ilemonrain/h5ai:lite 均可);正式使用或者需要完整功能,请使用full分支 (ilemonrain/h5ai:full)3. 进入Docker Bash Shell有的时候需要进入Docker镜像的Bash Shell进行修改,只需执行以下命令:docker exec -it h5ai sh4. Bugfix的记录以及感谢(2018/03/27) 修复了启动过程中,unzip配置参数错误,导致第二次启动时出现提示确认覆盖,发生异常的错误 (感谢 十六君)5. 感谢作者ilemonrain
2022年06月23日
47 阅读
0 评论
0 点赞
2022-06-13
拥有人生第一个邮局--记poste.io邮箱搭建记
一直以来想尝试搭建自己的邮箱。可以拥有无数个邮箱名,想想是不是很激动。搭建之前,先看看你是否都已经提前准备好了材料。一个开通25端口的VPS;一个域名。Poste 支持以下特性:SPF、DKIM、DMARC、SRS 的原生实现,带有简单的向导用于检测木马、病毒、恶意软件的防病毒引擎 ( ClamAV )内置垃圾邮件过滤器( RSPAMD )HTTPS 上的 Webmail 客户端(Roundcube)通过 Sieve 脚本进行电子邮件重定向、自动回复和其他过滤(电子邮件所有者管理,每个操作都可以编写脚本)用于限制邮箱空间或电子邮件数量的配额系统管理员、域管理员、电子邮件所有者具有不同权限的 Web 管理。内置 Microsoft 产品的自动发现功能,Thunderbird…帮助正确设置域和邮件服务器的诊断SMTP - 端口 25、465 (TLS)、587POP3 - 端口 110、995 (TLS)IMAP - 端口 143、993 (TLS)SSL TLS 无处不在,没有个人数据、电子邮件、登录信息通过互联网未加密。默认情况下,所有密码都存储为加盐 SHA512 哈希(5000 轮)。攻击者将很难破解您的密码。整个邮件服务器容器由 Docker 与其他应用程序隔离。DNS 解析配置以域名 DOMAIN.com 和 IP 10.10.10.10 为例,修改 DOMAIN.com 的 DNS 记录类型名称内容TTLAmail10.10.10.10AutoCNAMEsmtpmail.DOMAIN.comAutoCNAMEpopmail.DOMAIN.comAutoCNAMEimapmail.DOMAIN.comAutoA@
[email protected]
@v=spf1 mx ~allAutoTXT_dmarc.DOMAIN.comv=DMARC1; p=none; pct=100; rua=mailto:
[email protected]
; ruf=mailto:
[email protected]
._domainkey【先不配置这个,后面生成再配置,记录也是生成的】【先不配置这个,后面生成再配置,记录也是生成的】表格完成上面的配置之后可以通过 Poste 提供的检测服务检测: SFP-Tester DMARC-Tester添加 SPF/DKIM/PTR 解析,可提高邮件可信度,从而降低邮件进入垃圾箱的几率。DMARC 记录不是必须的,但是配置上会对于邮件送达有帮助。设置 PTR 反向解析PTR 记录,是电子邮件系统中的邮件交换记录的一种;另一种邮件交换记录是 A 记录(在 IPv4 协议中)或 AAAA 记录(在 IPv6 协议中)。PTR 记录常被用于反向地址解析。域名解析到 IP 被称为正向解析,而 IP 指向到域名,则被称为反向解析,反向解析需要在主机服务商处进行操作,具体请咨询主机服务商。一般的 VPS 都可以直接在后台面板添加 PTR 反向解析,如果遇到问题可以直接开 ticket 咨询,配置将 IP 指向到邮件服务器域名,如 mail.DOMAIN.com前期工作做好了,现在我们进入正题。安装docker跟Docker-ComposeDocker安装wget -qO- get.docker.com | bash开机自启动systemctl enable dockerDocker-Composesudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-composedocker-compose --versionPoste.io 安装配置数据目录mkdir /root/mailcd /root/mail安装docker run -d\ -p 25:25 \ -p 80:80 \ -p 443:443 \ -p 110:110 \ -p 143:143 \ -p 465:465 \ -p 587:587 \ -p 993:993 \ -p 995:995 \ -e /etc/localtime:/etc/localtime:ro \ -e DISABLE_CLAMAV=TRUE \ #关闭CLAMAV病毒检测,内存占用大时可添加 -v /root/mail:/data \ --restart=always \ --name "PosteServer" \ -h "mail.DOMAIN.com" \ -t analogic/poste.io若遇到端口占用的情况,请注意查杀进程lsof -i:25 kill -15 process_id安装后启动docker start PosteServerPoste.io配置创建管理员账户输入你的域名地址https://mail.DOMAIN.com就行!设置管理员账号和密码其他设置地址 https://mail.DOMAIN.com/admin/login,用你创建的管理员账号和密码登陆!创建dkim密钥Virtual domains -> DOMAIN.com【你的一级域名】点击 create new key,生成key把得到的值放到我们之前说的解析那里【如下】类型名称内容TTLTXTs20210221288._domainkeyk=rsa; p=MIIBIjANBgkqhk.........CuXNhz7TwIAuto开启SSL检测端口是否正常依次点击Server status -> Connections Diagnostics添加用户邮件界面中文化登陆普通域名地址https://mail.Domain.com【非admin】配置即可,其他就自己去玩吧!客户端配置邮件客户端访问。类型端口地址SMTP25,465,587smtp.Domain.comIMAP143,993imap.Domain.comPOP110,995pop.Domain.com邮件客户端可以根据上面的配置添加账号。邮件发送测试https://www.mail-tester.com/ 利用这个工具发送一封邮件,可以自动检测是邮箱的 [[SPF]], [[DKIM]] 等等配置,还会给出一定的优化建议问题小结:1、管理员邮箱收到主题为“Cron <root@mail> /bin/freshclam --quiet”的邮件答:重启docker服务 systemctl restart docker2、邮件系统能收外域邮件,只能发本地邮件不能发外域邮件答:检查所在服务器25端口出的开放情况,telnet * 25 或 邮箱后台有自检程序3、邮箱添加转发后无法收件,来信停在队列中答:检查server.ini里面的brand_name,不要写中文4、收到退信显示在使用的urbl.hostedemail.com黑名单中答:在https://fbl.returnpath.net上填个FBL的申请
2022年06月13日
105 阅读
0 评论
0 点赞
2022-06-07
群晖docker安装clouddrive
1.开启share类型挂载sudo mount --make-shared /volume12.开机自动执行挂载通过 任务计划 加到开机脚本中这是一个触发任务,事件是开机邮件发不发看个人需要,主要是运行脚本3.执行拉取安装docker run -d --name clouddrive --restart unless-stopped -v /volume1/docker/clouddrive:/CloudNAS:shared -v /volume1/docker/clouddrive/Config:/Config -p 9798:9798 --privileged --device /dev/fuse:/dev/fuse cloudnas/clouddrive
2022年06月07日
60 阅读
0 评论
0 点赞
1
2
3
4
5