Closed nugget closed 5 years ago
Changing the mountpoint for home in docker-sqitch.sh
fixes the glitch. I don't know if /home
is referenced anywhere else which might have troubles with this change.
docker run -it --rm --network host \
--mount "type=bind,src=$(pwd),dst=/repo" \
--mount "type=bind,src=$HOME,dst=/root" \
"${passenv[@]}" "$SQITCH_IMAGE" "$@"
BTW, as of 984e4f5, I've changed it to create a user named sqitch
, using /home
for the home directory. LMK if that causes any problems for you.
Confirmed working with the latest image/changes. Thanks!
Environment
Summary
When running docker-ized sqitch against
db:pg:
targets, sqitch is unable to pull credentials from the.pgpass
file mounted in/home
. Sqitch aborts with the messagefe_sendauth: no password supplied
.Sqitch ignores the value of the
$HOME
environment variable and instead relies on root's passwd entry to locate the.pgpass
file.Symptoms
Overriding the entrypoint in the image and running
/bin/dash
exhibits the same behavior. Trying to use sqitch pointing to a postgresql target behaves the same way.The target is configured as:
Curiously, the pg tools in the image have the same problem
Workaround
.pgpass
file from/home
to/root
it works./etc/passwd
to/home
that also works./home
as expected and this appears to have no effect.