GithubHelp home page GithubHelp logo

docker-chroot's Introduction

Docker-chroot

Como usar o Docker dentro de um ambiente chroot-unshare no Termux.
By @AkariOficial


Tutorial Vídeo

Mostrar mais

Como faz?

Telegram: Assistir Vídeo


Tutorial Texto

Mostrar mais

Como faz?

Instale o tsu #o quê é o tsu?

 pkg in -y root-repo tsu
 tsu

Habilite o cgroup #o que é cgroup?

 sudo mount -t tmpfs -o uid=0,gid=0,mode=0755 cgroup /sys/fs/cgroup

Inicie o docker #o que é docker?

 sudo dockerd --iptables=false &

Abra outra guia no termux e executa o chroot [2.2]

 container -run arch

nota: Volte para essa aba inicie-o-docker, após executar container -run arch acima.

Crie um arquivo chamado docker.sock em chroot/var/run/docker.sock e dê permissão 666

 sudo touch arch/var/run/docker.sock; sudo chmod 666 arch/var/run/docker.sock

Partindo do princípio que você sabe o que é um chroot e etc (este não é um tutorial de chroot em específico).

Expondo o socket do Docker que está localizado fora do ambiente chroot.

 sudo mount --bind /data/docker/run/docker.sock /data/data/com.termux/files/home/arch/var/run/docker.sock

Volte para a guia que você executou na etapa #2.2
e saia do chroot digitando exit e logue novamente.

 container -run arch

Verificando se tudo ocorreu bem

 docker info

nota: (deve retornar informações da versão do docker e outros parâmetros).

Para saber se realmente funcionou,
tente executar um container:

 docker run hello-world

Imagem do Docker com Chroot rodando imagem de um hello-world



Informações úteis (ou não)

aqui estarão algumas informações do que foi utilizado.

tsu

Mostrar mais
O comando tsu é uma ferramenta
no Termux que permite obter 
privilégios de superusuário
(root) no terminal. É semelhante
ao comando su que é usado em
sistemas operacionais Linux.

docker

Mostrar mais
Docker é uma plataforma de 
software que permite criar, 
implantar e executar aplicativos 
em contêineres, que são ambientes 
isolados e leves que executam um 
aplicativo e seus componentes, 
incluindo bibliotecas e dependê-
ncias. 
Isso permite que os aplicativos 
sejam portáteis, escaláveis 
e executados consistentemente 
em diferentes ambientes.

cgroup (explicação para docker)

Mostrar mais

Como já sabemos, o Docker é uma plataforma de software que permite criar, implantar e executar aplicativos em contêineres. E o que seria o cgroup em docker? cgroup é uma abreviação para "control group", um recurso do kernel do Linux que permite limitar, medir e isolar os recursos do sistema, como CPU, memória e E/S,para processos ou grupos de processos específicos.
O comando sudo mount -t tmpfs -o uid=0,gid=0,mode=0755 cgroup /sys/fs/cgroup
monta o sistema de arquivos "cgroup" em /sys/fs/cgroup usando o tipo "tmpfs" (um sistema de arquivos virtual na memória). Ele especifica o UID (identificador do usuário) e GID (identificador do grupo) como 0, o que significa que apenas o usuário root tem acesso ao sistema de arquivos cgroup. O modo 0755 define as permissões de acesso ao sistema de arquivos, permitindo que os proprietários e outros usuários leiam e executem arquivos, mas apenas o proprietário possa gravar.

chroot-unshare

Mostrar mais

O chroot-unshare é um recurso do Termux que permite criar um ambiente isolado dentro do sistema operacional Android, como se fosse uma máquina virtual. Esse ambiente pode ser usado para executar programas de outros sistemas operacionais, por exemplo. O comando chroot permite mudar o diretório raiz do sistema para outro diretório, enquanto o comando unshare permite criar um novo espaço de nomes para o processo. Juntos, eles criam um ambiente isolado do resto do sistema operacional.

docker-chroot's People

Contributors

whyakari avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.