Add defaults for CUPSADMIN and CUPSPASSWORD

If the variables CUPSADMIN and/or CUPSPASSWORD are not provided on start
adding the cups admin will fail, but the container will nevertheless
start.

With this change CUPSADMIN - if missing - will be set to "cupsadmin" and
CUPSPASSWORD - if missing - will be set to the name of the cups admin.
This commit is contained in:
Thomas Schewe
2020-05-03 13:37:57 +02:00
parent 663f17a6cd
commit d2aa0938f9
2 changed files with 12 additions and 0 deletions

View File

@@ -14,6 +14,8 @@ This Alpine-based Docker image runs a CUPS instance that is meant as an AirPrint
* `CUPSADMIN`: the CUPS admin user you want created
* `CUPSPASSWORD`: the password for the CUPS admin user
If CUPSADMIN is not set, the default "cupsadmin" will be used. If CUPSPASSWORD is no set, the name of the admin user will be used.
### Ports/Network:
* Must be run on host network. This is required to support multicasting which is needed for Airprint.

View File

@@ -2,6 +2,16 @@
set -e
set -x
# Is CUPSADMIN set? If not, set to default
if [ -z "$CUPSADMIN" ]; then
CUPSADMIN="cupsadmin"
fi
# Is CUPSPASSWORD set? If not, set to $CUPSADMIN
if [ -z "$CUPSPASSWORD" ]; then
CUPSPASSWORD=$CUPSADMIN
fi
if [ $(grep -ci $CUPSADMIN /etc/shadow) -eq 0 ]; then
adduser -S -G lpadmin --no-create-home $CUPSADMIN
fi