Na documentação do Docker, há uma discussão de opções para o execdriver nativo ( https://docs.docker.com/engine/reference/commandline/daemon/ ). A documentação diz
A opção native.cgroupdriver especifica o gerenciamento dos cgroups do contêiner. Você pode especificar cgroupfs ou systemd. Se você especificar systemd e ele não estiver disponível, o sistema utilizará o cgroupfs. Por padrão, se nenhuma opção for especificada, o execdriver primeiro tenta o systemd e volta ao cgroupfs. Este exemplo define o execdriver como cgroupfs:
Minha pergunta é o que é cgroupfs
e como ele se compara systemd
nesse caso. Pesquisando informações sobre o Google cgroupfs
levou a um tweet :
--exec-opt native.cgroupdriver = cgroupfs FTW. sério @docker, descartar o suporte para cgroups gerenciados pelo systemd, é um desastre
Mas espero que alguém possa fornecer mais detalhes sobre o que isso realmente faz, em vez de apenas dizer usar uma configuração diferente do padrão.
--exec-opt native.cgroupdriver=cgroupfs
. Mas suspeito que, se você escreveu uma resposta explicando a configuração que é mais fácil para um iniciante entender do que o que está na documentação do Docker, você receberia alguns votos positivos e isso também seria útil para as pessoas que encontrarem a pergunta do Google no futuro.Respostas:
Como posso ver no comentário em fontes em:
vendor/src/github.com/opencontainers/runc/libcontainer/factory_linux.go
cgroupfs
parece ser a próprialibcontainer
implementação do docker ( ), que configura os contêinerescgroups
gravando diretamente nos arquivoscgroups-file-system
(por exemplo, montados/sys/fs/cgroup/
).fonte