Usando o Docker em produção

2

Estou trabalhando em um projeto [legado] com um pipeline de criação que gera RPM s que são coletados por Spinnaker para < em> Asse um AMI que por sua vez será executado em uma máquina AWS EC2.

Eu propus o uso do Docker em vez do RPM + AMI, mas minha equipe resiste a usar o Docker "em produção". Uma das razões é que o Docker é um ambiente virtual e não faz sentido executá-lo no EC2, que é em si um ambiente virtualizado.

Procurei argumentos contra o uso do Docker na produção, mas ainda não tenho certeza dos contras e vantagens dessa abordagem. Quero dizer, o Amazon ECS suporta o Docker, mas isso parece mais com a compatibilidade do chavão. Alguém pode compartilhar algumas dicas sobre por que (ou porque não) pode-se usar o Docker (ou outras tecnologias de contêineres como RKT ) em vez de RPM + AMI?

Atualização de dezembro de 2016: cavando mais fundo, percebi que a principal preocupação da minha equipe era a capacidade limitada de docker-compose , em oposição a ferramentas de orquestração mais avançadas, como Kubernetes . O Kubernetes pode usar o Docker (entre outras tecnologias de contêiner), o que significa que não há problemas em executar o Docker em produção se a tecnologia de orquestração necessária estiver em vigor.

    
por AlexStack 28.11.2016 / 18:02

1 resposta

4

O Docker fornece um isolamento entre a máquina host (sua instância do AWS) e o processo em execução que gera seu RPM. Não conheço nenhum motivo para você não poder usar o Docker como mais uma camada de segurança e automação, pois seria muito mais fácil caso você precisasse migrar para outro servidor ou mesmo para o provedor de nuvem.

Além disso, você pode criar várias imagens do Docker executando diferentes distribuições e versões do SO para testar a instalação do pacote RPM recém-criado, em um fluxo de trabalho totalmente automatizado.

Agora em relação ao "uso do Docker em produção", não posso listar toda a empresa e grandes projetos usando a produção desde um ano atrás. É estável, tem documentação impressionante, uma comunidade grande e em rápido crescimento e a empresa por trás (Docker Inc) é uma das mais inovadoras e sob os holofotes do desenvolvimento de software atualmente. Sem mencionar que a pilha de tecnologia do Docker é baseada em componentes Linux sólidos como o próprio Kernel e libcontainer .

Como um plano inicial, sugiro que você migre uma pequena parte de seu ambiente para o Docker e use como uma configuração de teste. Isso também lhe dá mais espaço para detectar eventuais problemas que você possa ter.

Referências incríveis que encontrei: [1] link

    
por 28.11.2016 / 18:29