docker 데몬 시작 에러

익명 사용자의 이미지

Gentoo 사용 중입니다. docker 버전은 원래 18.09였던 것 같고 지금은 19.03이 최신입니다.

이전에는 18.09를 문제 없이 설치 사용하였습니다. @world 업데이트 (모든 패키지 한 번에 업데이트)한 이후로 docker 데몬이 실행되지 않습니다. 19.03에서 버전을 18.09로 다시 낮춰봤지만 여전히 안 됩니다. Gentoo 패키지로 나오는 docker를 지우고 stable binary version을 docker 사이트에서 다운받아 dockerd 커맨드로 직접 실행해도 안 되는 것은 마찬가지입니다.

# /usr/local/bin/dockerd 2>&1 | tail -1
failed to start daemon: Devices cgroup isn't mounted

왜 안 되는 것이고 어떻게 수정하는 게 좋을까요?

검색을 해봤는데 비슷한 문제로 보이는 것은 없어 보여서 새로 질문을 올립니다.

 # lxc-checkconfig 
Kernel configuration not found at /proc/config.gz; searching...
Kernel configuration found at /boot/config-5.1.12-gentoo
--- Namespaces ---
Namespaces: enabled
Utsname namespace: enabled
Ipc namespace: enabled
Pid namespace: enabled
User namespace: enabled
Network namespace: enabled
 
--- Control groups ---
Cgroups: enabled
 
Cgroup v1 mount points: 
 
 
Cgroup v2 mount points: 
/sys/fs/cgroup
 
Cgroup v1 systemd controller: missing
Cgroup v1 freezer controller: missing
Cgroup namespace: required
Cgroup device: enabled
Cgroup sched: enabled
Cgroup cpu account: enabled
Cgroup memory controller: enabled
Cgroup cpuset: enabled
 
--- Misc ---
Veth pair device: enabled, not loaded
Macvlan: enabled, not loaded
Vlan: missing
Bridges: enabled, not loaded
Advanced netfilter: enabled, not loaded
CONFIG_NF_NAT_IPV4: missing
CONFIG_NF_NAT_IPV6: missing
CONFIG_IP_NF_TARGET_MASQUERADE: enabled, not loaded
CONFIG_IP6_NF_TARGET_MASQUERADE: missing
CONFIG_NETFILTER_XT_TARGET_CHECKSUM: missing
CONFIG_NETFILTER_XT_MATCH_COMMENT: missing
FUSE (for use with lxcfs): enabled, loaded
 
--- Checkpoint/Restore ---
checkpoint restore: enabled
CONFIG_FHANDLE: enabled
CONFIG_EVENTFD: enabled
CONFIG_EPOLL: enabled
CONFIG_UNIX_DIAG: missing
CONFIG_INET_DIAG: missing
CONFIG_PACKET_DIAG: missing
CONFIG_NETLINK_DIAG: missing
File capabilities: 
 
Note : Before booting a new kernel, you can check its configuration
usage : CONFIG=/path/to/config /usr/bin/lxc-checkconfig

cgroup v1 mount points가 비어 있습니다. 예전에는 번잡하게 여럿 보이던, /etc/mtab 아래에 cgroup 어쩌고 하는 애들이 다 사라진 것 같고요.

# cat /etc/mtab  | egrep cgroup
cgroup2 /sys/fs/cgroup cgroup2 rw,nosuid,nodev,noexec,relatime,nsdelegate 0 0

혹시 이게 dockerd가 기대하고 있는 부분이라면, 이게 뭔가 systemd 업데이트와 함께 사라진 것 같은데 되살리는 게 말이 되는지, 되살리려면 어떻게 해야 하는지요?

자문자답의 이미지

cgroup-hybrid를 use flag에 넣고 다시 컴파일 하면 해결되는 것 같습니다.
https://bugs.gentoo.org/691844