
Docker Desktop(4.16.3)で遊んでいてスラムを実行するとslurmd
、次のエラーが表示されます。
common_cgroup_instantiate: unable to create cgroup '/sys/fs/cgroup/freezer/slurm' : Read-only file system
unable to build slurm cgroup for ns freezer: Read-only file system
unable to create slurm freezer xcgroup
Couldn't load specified plugin name for proctrack/cgroup: Plugin init() callback failed
cannot create proctrack context for proctrack/cgroup
error: slurmd initialization failed
解決策を探し回ったが、答えを見つけることができませんでした。
解決策の1つは、grubと一緒に次のコマンドを使用することですsystemd.unified_cgroup_hierarchy=1
。しかし、grubはベースイメージに存在せず、何らかの形でインターフェースするため警告が出ているようです。systemd
また、不足しているディレクトリを作成し、権限を変更するという不器用なアプローチも試しましたが、それでも読み取り専用エラーが発生します。
RUN mkdir -p /sys/fs/cgroup/freezer/slurm:
#0 mkdir: cannot create directory '/sys/fs/cgroup/freezer/slurm': Read-only file system
どのような助けでも大歓迎です。
答え1
ホスト上のボリュームを/sys/fs/cgroup
コンテナにマッピングしてみてください。
下記の通りです。
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup