Construindo um pequeno Cluster HPC utilizando Windows
Como vimos, Docker é uma plataforma de conteinerização, capaz de construir, distribuir e rodar contêineres Docker. Já Kubernetes é uma plataforma de orquestração de contêineres para plataformas como Docker.
O que são containers? De forma sucinta, a tecnologia de container é uma metodologia utilizada para empacotar aplicações para que possam ser executadas/disponibilizadas com o seu subset de dependências de maneira isolada e eficiente no intuito de segregar e facilitar a portabilidade dessas aplicações.
O cluster Kubernetes é um conjunto de máquinas de nós usado para executar aplicações em container. Quando você executa o Kubernetes, está executando um cluster. No mínimo, um cluster contém um plano de controle e pelo menos uma máquina ou nó de computação.
Em programação orientada a objetos, Container é um delimitador abstrato, ou seja, um objeto que contém outros objetos que podem ser incluídos ou removidos dinamicamente (durante o tempo de execução), diferentemente do que ocorre em uma composição onde este relacionamento é fixado durante o tempo de compilação.
O container é uma caixa construída em aço, alumínio ou fibra, geralmente em grandes dimensões, com o objetivo de transportar carga. Pode ser utilizado em diversos meios de transporte como, ferroviário, marítimo, terrestre, etc.
O termo contêiner ou contentor é um equipamento utilizado para transportar carga. Um contentor ou contêiner é uma grande caixa de metal ou madeira, geralmente de grandes dimensões, destinado ao acondicionamento e transporte de carga em navios, trens etc.
Docker Compose é o orquestrador de containers da Docker. E como funciona um orquestrador em uma orquestra? Ele rege como uma banda deve se comportar/tocar durante uma determinada apresentação ou música. Com o Docker Compose é a mesma coisa, mas os maestros somos nós!
O Docker Compose é uma ferramenta para a criação e execução de múltiplos containers de aplicação. Com o Compose, você usar um arquivo do tipo yaml para definir como será o ambiente de sua aplicação e usando um único comando você criará e iniciará todos os serviços definidos.
Existem duas possibilidades: A primeira é escrever o Dockerfile e criar o container a partir dele. A segunda é utilizar o comando docker run para que ele busque a imagem na internet e rode o container para nós. Mas, quando se usa o comando docker run, ele vai até o Docker Hub, busca essa imagem e baixa para nós.
Então o que você pode fazer é com que um dos seus containers declarados no seu docker-compose. yml rode o apache. Você criar um Dockerfile e nele declarar exatamente o que você quer que rode no container. E depois declarar esse container no seu docker-compose.
Instalando o Docker Vamos então acessar a página de início do Docker e clicar em Download Desktop and Take a Tutorial. Isto vai nos levar a página de Downloads. Selecione a versão que atende seu sistema operacional, como Docker for Windows ou Docker for Mac e na tela seguinte selecione Get Docker.
Passo 1 — Como instalar o Docker Compose Vamos verificar o lançamento atual e, se necessário, atualizá lo no comando abaixo: sudo curl -L https://github.com/docker/compose/releases/download/1.
Passo 1 — Instalando o Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/1.
A atualização do Docker compose vai depender do sistema que você está utilizando. No Windows e no MacOS eles são atualizados junto com o instalador do Docker nesses plataformas, o que não ocorre quando atualizamos o Docker a partir de um repositório ( apt-get upgrade ).
Agora basta executar docker-compose build e depois docker-compose up app-dev para levantarmos nossa aplicação para desenvolvimento, tente mudar algo no código e veja sua aplicação reiniciar.
Para criar um Dockerfile é simples, basta criar um arquivo com o nome Dockerfile . Para gerar a imagem a partir do Dockerfile, executamos o comando abaixo no mesmo local que o arquivo se encontra: docker build -t nome_da_imagem .
Configurar o Docker com um arquivo de configuração