mirror of
https://github.com/moby/buildkit.git
synced 2026-08-09 01:01:08 +00:00
26 lines
931 B
Bash
Executable File
26 lines
931 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# For cgroup v2, ensure buildkitd has a namespaced view of /sys/fs/cgroup by
|
|
# running in a new cgroup and mount namespace and remounting /sys/fs/cgroup.
|
|
# Assume we are already in our own cgroup ns if the current cgroup path is
|
|
# "/".
|
|
#
|
|
# Note this is a workaround for the lack of cgroupns control in the Kubernetes
|
|
# API. If KEP-5714 is adopted, this can eventually be removed.
|
|
#
|
|
# See https://github.com/kubernetes/enhancements/issues/5714
|
|
|
|
set -e
|
|
|
|
if [ -e /sys/fs/cgroup/cgroup.controllers ]; then
|
|
if [ "$(cut -d: -f3 /proc/self/cgroup)" != "/" ]; then
|
|
if /usr/bin/unshare --cgroup --mount /usr/bin/with-cgroupfs-remount true 2>/dev/null; then
|
|
echo creating cgroup namespace >&2
|
|
exec /usr/bin/unshare --cgroup --mount /usr/bin/with-cgroupfs-remount /usr/bin/buildkitd "$@"
|
|
fi
|
|
echo skipping cgroup namespace setup, unable to remount /sys/fs/cgroup >&2
|
|
fi
|
|
fi
|
|
|
|
exec /usr/bin/buildkitd "$@"
|