Skip to content

joseims/doqueru-kun

Repository files navigation

doqueru-kun 🐌

Doquerinho, our little, half giant snail half, container friend!

You can find the article explaining how it works here

Proposta

Baseado neste tutorial iremos criar nossa própria aplicação para containerização de programas. As features que iremos implementar são essas:

Features Totais

🐌 : Isolamento do sistema de arquivos
🐌 : Isolamento de namespace de users
🐌 : Isolamento de variáveis
🐌 : Isolamento da árvore de processos e das interfaces de rede
🐌 : Controle do uso de memória
🐌 🐌 : Em % (hard ou soft)
🐌 🐌 : Ilimitado
🐌 : Controle do uso de CPU
🐌 🐌 : Em % (hard ou soft)
🐌 🐌 : Ilimitado

Dessas features as coisas que diferem do tutorial original são:

Nossas mudanças

🐌 : Usar pivot_root
🐌 : Controle do uso de memória
🐌 🐌 : Em % (hard ou soft)
🐌 🐌 : Ilimitado
🐌 : Controle do uso de CPU
🐌 🐌 : Em % (hard ou soft)
🐌 🐌 : Ilimitado

EXTRAS

🐌 : Criar uma página na wikipedia sobre containers
🐌 : Comunicação
🐌 : Permitir controle de disco
🐌 : Limitar/bloquear systemcalls

Usage

dokeru [OPTION]...

--shares CPU_SHARES
         define valor de CPU_SHARES
--period CPU_PERIOD
         define valor de CPU_PERIOD
--percent CPU_PERCENT
         define valor de CPU_PERCENT como um número de 1 a 100
--cpus CPU_CPUS
         define valor de CPU_CPUS
--memlimit MEM_MAX
         define valor de MEM_MAX

Oops!

  • Quando dá unshare -m seguido de um exit

https://yarchive.net/comp/linux/pivot_root.html https://lists.gnu.org/archive/html/guix-commits/2015-06/msg00047.html https://news.ycombinator.com/item?id=11558364