|
7 | 7 | # External dependencies: |
8 | 8 | # * newuidmap and newgidmap needs to be installed. |
9 | 9 | # * /etc/subuid and /etc/subgid needs to be configured for the current user. |
10 | | -# * Either one of slirp4netns (v0.3+), VPNKit, lxc-user-nic needs to be installed. |
| 10 | +# * Either one of slirp4netns (>= v0.4.0), VPNKit, lxc-user-nic needs to be installed. |
11 | 11 | # slirp4netns is used by default if installed. Otherwise fallsback to VPNKit. |
12 | 12 | # The default value can be overridden with $DOCKERD_ROOTLESS_ROOTLESSKIT_NET=(slirp4netns|vpnkit|lxc-user-nic) |
13 | 13 | # |
|
37 | 37 |
|
38 | 38 | : "${DOCKERD_ROOTLESS_ROOTLESSKIT_NET:=}" |
39 | 39 | : "${DOCKERD_ROOTLESS_ROOTLESSKIT_MTU:=}" |
40 | | -# if slirp4netns v0.4.0+ is installed, slirp4netns is hardened using sandbox (mount namespace) and seccomp |
41 | 40 | : "${DOCKERD_ROOTLESS_ROOTLESSKIT_SLIRP4NETNS_SANDBOX:=auto}" |
42 | 41 | : "${DOCKERD_ROOTLESS_ROOTLESSKIT_SLIRP4NETNS_SECCOMP:=auto}" |
43 | 42 | net=$DOCKERD_ROOTLESS_ROOTLESSKIT_NET |
44 | 43 | mtu=$DOCKERD_ROOTLESS_ROOTLESSKIT_MTU |
45 | 44 | if [ -z $net ]; then |
46 | 45 | if which slirp4netns >/dev/null 2>&1; then |
47 | | - if slirp4netns --help | grep -- --disable-host-loopback; then |
| 46 | + # If --netns-type is present in --help, slirp4netns is >= v0.4.0. |
| 47 | + if slirp4netns --help | grep -qw -- --netns-type; then |
48 | 48 | net=slirp4netns |
49 | 49 | if [ -z $mtu ]; then |
50 | 50 | mtu=65520 |
51 | 51 | fi |
52 | 52 | else |
53 | | - echo "slirp4netns does not support --disable-host-loopback. Falling back to VPNKit." |
| 53 | + echo "slirp4netns found but seems older than v0.4.0. Falling back to VPNKit." |
54 | 54 | fi |
55 | 55 | fi |
56 | 56 | if [ -z $net ]; then |
57 | 57 | if which vpnkit >/dev/null 2>&1; then |
58 | 58 | net=vpnkit |
59 | 59 | else |
60 | | - echo "Either slirp4netns (v0.3+) or vpnkit needs to be installed" |
| 60 | + echo "Either slirp4netns (>= v0.4.0) or vpnkit needs to be installed" |
61 | 61 | exit 1 |
62 | 62 | fi |
63 | 63 | fi |
|
0 commit comments