distribuiu serviços em nós específicos com o Docker Swarm?

1

Eu tenho um monte de serviços heterogêneos usando sockets e REST que estão sendo reiniciados manualmente. Existem 5 máquinas atualmente rodando imagens VMware do Windows que chamaremos NODES. Cada NODE precisa executar alguns desses serviços. Vamos escolher um serviço que chamaremos de SRV, que especificamente precisa acessar um dispositivo USB na máquina.

Eu quero começar simples, e dockerize este SRV primeiro .. mas a orquestração tem me preso.

Estou pensando que o Docker Swarm poderia trazer 5 instâncias de SRV, uma para cada NODE. mas como especificar isso (ou posso?) O DCOS é outra opção para isso? Todos vão rodar o Windows 10 se isso for importante.

    
por Erik 08.02.2018 / 21:28

1 resposta

1

Você pode usar qualquer solução de orquestração de contêineres como o Docker Swarm. A captura é como garantir que o contêiner tenha acesso aos dispositivos USB do sistema host. Para isso, para comandos do docker simples, passe a opção: --device=/dev/ttyUSB0

Com comandos de execução do docker.

Para o enxame do docker, não há serviço para dispositivos. Você terá que usar a opção: --mount type=bind

Com o serviço de encaixe, crie comandos. Por exemplo:

docker service create --mount type=bind,source=/dev/ttyUSB0,target=/dev/ttyUSB0

No contêiner, você pode controlar e usar o dispositivo. Você precisará substituir /dev/ttyUSB0 pelo caminho real do dispositivo PCI.

    
por 24.03.2018 / 20:58

Tags