Virtualização Um sistema operacional completo (Guest) rodando sobre o sistema operacional que está rodando na máquina física (Host) Opinião pessoal (mais defin. ver no google)
LXC - Linux Containers • Isolamento de processo (chroot) • Isolamento de rede • Limitação de memória • Isolamento de File System • Dificuldade de compartilhamento de volumes
LXC - Linux Containers • Rodando: sudo lxc-start --name testando udhcpc: SIOCGIFINDEX: No such device Please press Enter to activate this console. / • Parando (tem que usar um outro terminal no host): sudo lxc-stop --name testando
Tips • Não é VM, é CONTAINER • Porque container (padrão de transporte) • Conceito de Guest e Host, também vale. • Imagem vs Container (imagem é estática, container é o que roda). Similar a VM e imagem da VM (AMI)
Instalation • Debian, Arch, Fedora, CentOS, AWS EC2, Mac OS X, Suse, Microsoft Ubuntu, Microsoft Windows, etc... • Mac OS X e Microsoft Windows (boot2docker-vm) https://docs.docker.com/installation/#installation
Docker Machine • Cria uma VM com boot2docker onde você quiser • Amazon Web Services, Digital Ocean, Google Compute Engine, IBM Softlayer, Microsoft Azure, Openstack, etc...
Docker Machine • Cria uma VM com boot2docker onde você quiser • Amazon Web Services, Digital Ocean, Google Compute Engine, IBM Softlayer, Microsoft Azure, Openstack, etc... • Preparado para criação de clusters (Swarms) https://docs.docker.com/machine/
Why Compose? • Imagine que você entrou no E-Bahya • Maior e-commerce da África Latina com trocentos acessos por minutos • Cada serviço do E-Bahya roda em um servidor na nuvem Alazão Jeg Servers (escalável de acordo com a qtde de acessos - sempre entre 5 e 10 instâncias rodando)
Why Compose? • Imagine que você entrou no E-Bahya • Maior e-commerce da África Latina com trocentos acessos por minutos • Cada serviço do E-Bahya roda em um servidor na nuvem Alazão Jeg Servers (escalável de acordo com a qtde de acessos - sempre entre 5 e 10 instâncias rodando) • Serviços se comunicam entre si via rede privada
Why Compose? Como você monta o ambiente na sua máquina? a) vou instalando os pacotes: do banco, nginx / apache, etc b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1
Why Compose? Como você monta o ambiente na sua máquina? a) vou instalando os pacotes: do banco, nginx / apache, etc b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1 c) vou levantar um virtualbox com todos os serviços instalados
Why Compose? Como você monta o ambiente na sua máquina? a) vou instalando os pacotes: do banco, nginx / apache, etc b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1 c) vou levantar um virtualbox com todos os serviços instalados d) manjo tudo de docker vou montar um container com a distro linux que está nos servidores e os pacotes nas versões certas.
Why Compose? Como você monta o ambiente na sua máquina? a) vou instalando os pacotes: do banco, nginx / apache, etc b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1 c) vou levantar um virtualbox com todos os serviços instalados d) manjo tudo de docker vou montar um container com a distro linux que está nos servidores e os pacotes nas versões certas. e) um container para cada serviço: um pro banco, um para a sessão, um pro servidor web, um para o elastic search, um para o frontend e um para o backend e assim por diante