Merge pull request #1403 from pi-hole/v6/change-pihole-userid
Allow the for changing of the UID/GID of the user/group pihole
This commit is contained in:
commit
e0678bd803
|
@ -28,7 +28,8 @@ RUN apk add --no-cache \
|
||||||
procps \
|
procps \
|
||||||
ncurses \
|
ncurses \
|
||||||
binutils \
|
binutils \
|
||||||
tzdata
|
tzdata \
|
||||||
|
shadow
|
||||||
|
|
||||||
ADD https://ftl.pi-hole.net/macvendor.db /macvendor.db
|
ADD https://ftl.pi-hole.net/macvendor.db /macvendor.db
|
||||||
COPY crontab.txt /crontab.txt
|
COPY crontab.txt /crontab.txt
|
||||||
|
|
19
src/start.sh
19
src/start.sh
|
@ -24,6 +24,25 @@ echo " [i] Starting docker specific checks & setup for docker pihole/pihole"
|
||||||
|
|
||||||
# Initial checks
|
# Initial checks
|
||||||
# ===========================
|
# ===========================
|
||||||
|
|
||||||
|
# If PIHOLE_UID is set, modify the pihole user's id to match
|
||||||
|
if [ -n "${PIHOLE_UID}" ]; then
|
||||||
|
currentId=$(id -u ${username})
|
||||||
|
[[ ${currentId} -eq ${PIHOLE_UID} ]] && return
|
||||||
|
|
||||||
|
echo " [i] Changing ID for user: pihole (${currentId} => ${PIHOLE_UID})"
|
||||||
|
usermod -o -u ${PIHOLE_UID} pihole
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If PIHOLE_GID is set, modify the pihole group's id to match
|
||||||
|
if [ -n "${PIHOLE_GID}" ]; then
|
||||||
|
currentId=$(id -g pihole)
|
||||||
|
[[ ${currentId} -eq ${PIHOLE_GID} ]] && return
|
||||||
|
|
||||||
|
echo " [i] Changing ID for group: pihole (${currentId} => ${PIHOLE_GID})"
|
||||||
|
groupmod -o -g ${PIHOLE_GID} pihole
|
||||||
|
fi
|
||||||
|
|
||||||
fix_capabilities
|
fix_capabilities
|
||||||
# validate_env || exit 1
|
# validate_env || exit 1
|
||||||
ensure_basic_configuration
|
ensure_basic_configuration
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
@pytest.mark.parametrize("test_args", ['-e "PIHOLE_UID=456"'])
|
||||||
|
def test_pihole_uid_env_var(docker):
|
||||||
|
func = docker.run('id -u pihole')
|
||||||
|
assert "456" in func.stdout
|
||||||
|
|
||||||
|
@pytest.mark.parametrize("test_args", ['-e "PIHOLE_GID=456"'])
|
||||||
|
def test_pihole_gid_env_var(docker):
|
||||||
|
func = docker.run('id -g pihole')
|
||||||
|
assert "456" in func.stdout
|
Loading…
Reference in New Issue