본문 바로가기

맥(솔라리스)

macOS M1 - Failed to get D-Bus connection: No such file or directory

반응형

macOS M1 - Failed to get D-Bus connection: No such file or directory

deprecatedCgroupv1 설정은 Docker 데몬이 cgroup v1을 사용하는지 여부를 결정합니다. Cgroup v1은 Docker 데몬이 사용하는 cgroup 버전입니다. cgroup은 프로세스를 그룹화하고 리소스를 할당하는 데 사용되는 Linux 커널 기능입니다.

 

deprecatedCgroupv1 설정의 값이 true이면 Docker 데몬은 cgroup v1을 사용합니다. 이 설정의 값이 false이면 Docker 데몬은 cgroup v2를 사용합니다.

 

cgroup v1은 cgroup v2보다 오래되었으며 더 이상 사용되지 않습니다. cgroup v2는 cgroup v1보다 더 효율적이고 안전합니다. 따라서 deprecatedCgroupv1 설정의 값은 false로 설정하는 것이 좋습니다.

 

  • CentOS 7 컨테이너
root@54daaa14ec75:/$ sudo systemctl --now enable nginx
Failed to get D-Bus connection: No such file or directory

 

cat ~/Library/Group\ Containers/group.com.docker/settings.json | grep deprecatedCgroupv1
% cat ~/Library/Group\ Containers/group.com.docker/settings.json | grep deprecatedCgroupv1
  "deprecatedCgroupv1": false,

위의 출력에서 deprecatedCgroupv1 설정의 값은 false로 설정되어 있으므로 Docker 데몬은 cgroup v2를 사용합니다.

 

deprecatedCgroupv1 설정을 변경(false --> true 변경)하려면 다음 명령을 사용합니다.

vim ~/Library/Group\ Containers/group.com.docker/settings.json
...
   "deprecatedCgroupv1": true,
   "disableHardwareAcceleration": false,
   "disableUpdate": false,
...

 

% cat ~/Library/Group\ Containers/group.com.docker/settings.json | grep deprecatedCgroupv1
  "deprecatedCgroupv1": true,

 

Docker 데몬을 다시 시작하여 변경 사항을 적용합니다.

 

  • CentOS 7 컨테이너
root@13f44e72b48f:/$ sudo systemctl --now enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

 

이렇게 하면 Docker 데몬이 cgroup v1를 사용하도록 변경됩니다.

 

728x90
반응형