CUPS Server Success
I've had some luck with the CUPS server docker, jstrader/airprint-cloudprint
I had to set it up 100% manually. Oddly enough the docker hub page says, "On unRaid, install from the Community Repositories and enter the required folder locations," but I didn't find such a thing when I searched.
I had to do a whole lot of "+Add another Path, Port, Variable, Label or Device" to get it all set up.
All settings can be found on https://hub.docker.com/r/jstrader/airprint-cloudprint
I ended up mapping to
/mnt/user/appdata/cups/config/
/mnt/user/appdata/cups/logs/
/mnt/user/appdata/cups/cpc/
for
/etc/cups
/var/log/cups
/etc/cloud-print-connector
respectively, since I already had a share, which is actually not shared on the network, /mnt/user/appdata/
The settings I used, which were not mentioned on the docker hub page were
click "Advanced," then set WebUI to http://<IP-ADDRESS-OF-UNRAID-SERVER>:631
Network Type: Host
Console shell command: Bash
I left Privileged set to "OFF"
Once it's all set up, hit the <Apply> button at the bottom of the Docker "Add Container" form page, and you're ready to configure CUPS with the Web GUI.
It worked for AirPrint with no issues. I followed the directions for Google Cloud Print (I had to enter the container's console), and my Google account says it sees my printer, but I need to sneak off with one of my kids' Chromebooks to see if it really works.
The only thing I don't like is the sluggish performance vs other CUPS containers I've played with, including other v2.3.1 containers. But, I now have AirPrint and Google Cloud Print, so I'll call it a win.
All this to let my family print to our wireless Brother HL-2270DW laser printer from any device.