BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Um novo engine do Docker para SQL Server e Windows Server, pela WinDocks

Um novo engine do Docker para SQL Server e Windows Server, pela WinDocks

A WinDocks liberou um port do Docker engine para o Windows, que pode ser executado no Windows Server 2012 como host. O port pode executar múltiplas versões do SQL Server em containers e suporta o .NET 2, 3.5 e 4.5.

Esse port é diferente do Docker para Windows anunciado recentemente. O cliente oficial do Docker pode ser usado com o WinDocks, que suporta um subconjunto de comandos do Docker, incluindo build, create, commit, exec, ps, start e stop. O port da WinDocks utiliza um projeto de container open source além do port para o Docker Engine desenvolvido pela Uhuru software.

O kernel do Windows 2012 não tem suporte nativo aos requisitos de isolamento necessários para containers. O WinDocks usa, como a tecnologia base para os containers, o Windows Job Objects. O WJO é capaz de gerenciar processos como uma unidade integrada.

Um Job Object pode ser usado para controlar o uso de um recurso para um grupo de processos, tais como a prioridade de processos e uso da CPU. Isto inclui o Discretionary Access Control Lists (DACL) para permissões de arquivos e sistema de arquivos. E o Windows Filtering Platform para gerenciar operações de rede. A plataforma Windows Filtering expõe funcionalidades para o processamento de pacotes de rede e filtragem.

O isolamento em containers Linux, incluindo o que o Docker fornece, é obtido através do controle de grupos (cgroups). Devido à falta de um mecanismo similar no Windows Server 2012, um várias mudanças foram necessárias para disponibilizar essa funcionalidade no WinDocks.

O InfoQ falou com a equipe do WinDocks para saber mais sobre questões de segurança que podem surgir como consequência dessas mudanças. Ramesh Parameswaran, fundador do WinDocks respondeu:

Não recomendamos o uso do WinDocks em cenários onde cada cliente é uma empresa ou departamento diferente. Apesar de ter evoluído muito, o WinDocks ainda fornece 100% de isolamento de processos. Os processos de containers no WinDocks têm restrições no uso de memória e CPU, para que um único processo não trave a máquina.

Os containers WinDocks estão atualmente limitados a imagens .NET e MS SQL Server. Estas podem ser a imagem base de um servidor SQL empacotada com o produto, ou uma imagem SQL customizada a partir da imagem base.

Para criar uma imagem SQL customizada, o usuário dispara o container partindo da imagem base, adiciona um arquivo MDF e faz commit do container como nova imagem, que então pode ser usada para iniciar o container customizado. Os arquivos de dados primários no MS SQL são tipicamente criados com a extensão MDF. Bancos de dados SQL Server remotos também podem ser usados, através de montagens de rede (network mounts).

De acordo com Parameswaran, o próximo passo da equipe do WinDocks é a melhoria da funcionalidade de logging e a integração com o Jenkins para permitir que as técnicas de Integração Contínua e Entrega Contínua sejam facilmente adotadas.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT