diff --git a/hack/make/.integration-daemon-start b/hack/make/.integration-daemon-start index 04934d7b5a..11508758ef 100644 --- a/hack/make/.integration-daemon-start +++ b/hack/make/.integration-daemon-start @@ -102,8 +102,19 @@ if [ -z "$DOCKER_TEST_HOST" ]; then ) fi - # "pwd" tricks to make sure $DEST is an absolute path, not a relative one - export DOCKER_HOST="unix://$(cd "$DEST" && pwd)/docker.sock" + if [ -n "${DOCKER_ROOTLESS}" ]; then + # "pwd" tricks to make sure $DEST is an absolute path, not a relative one + export DOCKER_HOST="unix://$(cd "$DEST" && pwd)/docker.sock" + else + # Put socket in /run because: + # 1. That's the normal place for such things + # 2. When running on Docker For Mac, if you need to run tests with the bundles dir mounted (e.g. to poke through test artifacts). + # the socket will not work because it will be over osxfs. + mkdir -p /run/docker + sock_dir=$(mktemp -d -p /run/docker) + chmod 0755 "$sock_dir" + export DOCKER_HOST="unix://${sock_dir}/docker.sock" + fi ( echo "Starting dockerd" [ -n "$TESTDEBUG" ] && set -x