Meu amigo Chris Cellucci me deu a resposta: corra com --privilegiado
Vou expandir isso com mais detalhes hoje ou amanhã.
Estou com problemas para definir o limite do sistema de 'memlock' em um container que eu inicio assim:
docker run -it ubuntu:xenial
Aqui está o que eu tentei resumir:
Na sessão 1 do terminal do bash:
docker run -it ubuntu:xenial
defina /etc/security/limits.conf
para incluir essas linhas
* hard memlock unlimited
* soft memlock unlimited
no final do arquivo.
Em seguida, de outro terminal bash no host 'bash in' para o mesmo contêiner e tente fazer isso:
root@6ae391cfb6de:/# ulimit -l unlimited
Eu recebo este erro:
bash: ulimit: max locked memory: cannot modify limit: Operation not permitted
Estou executando o MacOS Sierra 10.12.6 / Docker versão 18.03.1-ce, compilação 9ee9f40
Casca # 1
macOS > %código% OUTPUT IS: ilimitado
macOs >
ulimit -l # output of this command is 'unlimited' which shows host ulimits are not the issue
os comandos abaixo são executados no exemplo xenial-docker iniciado a partir do comando acima no Mac no bash shell # 1
cd # to home directory
grep limit .bashrc # check it any session limits are defined at shell startup -- nothing found
cat >> /etc/security/limits.conf <<EOF
* hard memlock unlimited
* soft memlock unlimited
EOF
Shell # 2 no Mac
containerId='docker ps | grep ubuntu | sed -e's/ .*//'' # assumes you only have one docker instance of ubuntu running
docker exec -t -i $containerId bash # 'bash in' to ubuntu running container launched in shell #2
ulimit -l
# output is 82000 ... huh?
#
# try setting
ulimit -l unlimited
#
# Nope.. i get this error:
# bash: ulimit: max locked memory: cannot modify limit: Operation not permitted
Alguma dica ou orientação muito apreciada.
Não seria bom que o documento fornecesse essa capacidade.
No Linux, acho que é a capacidade CAP_IPC_LOCK
.
Por que você precisa bloquear, isso geralmente não é uma boa ideia ou é necessário. Isso não impedirá a troca no modo de hibernação.
Eu verifiquei aqui link docker no mac duas versões. Ambos são executados em um contêiner em uma instância do Linux em uma máquina virtual. Portanto, os recursos serão relevantes: você precisará adicionar o recurso apropriado. Consulte o link