DevOpsDays - Apresentação

Preview:

Citation preview

Docker Registry, Rancher Catalog

Docker Registry

O que é?

• Registry é um servidor stateless, altamente escalável que armazena e permite distribuir suas imagens Docker.

• O Registry é open-source, Apache License.

Por quê usar?

Você deve usar o Regsitry se você quer:

• Controle total do lugar onde suas imagens estão sendo hospedadas

• Possuir controle total das suas imagens e do pipeline de distribuição

• Integrar o armazenamento e distribuição de imagens diretamente no seu fluxo de desenvolvimento interno

Por quê usar?

Rodando

# docker run -d -p 5000:5000 --name registry registry:2

# docker pull ubuntu

# docker tag ubuntu localhost:5000/minhaprimeiraimagem:1

# docker push localhost:5000/minhaprimeiraimagem:1

# docker pull localhost:5000/minhaprimeiraimagem:1

Alternativas

Usuários podem usar o Docker Hub, onde o Registry é hospedado e totalmente gratuito.

Caso de uso

Rodar seu próprio registro é uma grande solução para integrar e complementar seu sistema de CI/CD.

Workflow típico:Um commit no controle de versão dispara uma triger para o

CI, que irá fazer o push da nova imagem se o build for feito com sucesso. Uma notificação do Registry dispara o deploy em um ambiente de desenvolvimento, ou notifica outros sistemas que uma nova imagem está disponível.

Também é um componente essencial se você quer rapidamente fazer o deploy de uma nova imagem em um grande cluster de máquinas.

E por final, é a melhor maneira de distribuir imagens dentro de uma rede isolada.

Caso de uso

Portus

Portus é um serviço de autorização e interface de usuário, open source, para a próxima geração de Docker Registry.

http://port.us.org/

DEMO

http://54.234.236.214:3000

RancherCatalog

O que é?

• É um catálogo de template de aplicações provido pelo Rancher que torna fácil o deploy de tarefas complexas.

• Templates certificados da Rancher e também da comunidade.

• Podem ser criados. Muito simples, somente o nome e a URL.

Por quê usar?

Você deve usar o Catalog se você quer:

- Disponibilizar stack de aplicações para seus times em forma de templates

Criando catálogos privados

Estrutura de diretório

-- templates OR kubernetes-templates OR swarm-templates |-- cloudflare | |-- 0 | | |-- docker-compose.yml | | |-- rancher-compose.yml | |-- 1 | | |-- docker-compose.yml | | |-- rancher-compose.yml | |-- catalogIcon-cloudflare.svg | |-- config.yml...

Criando catálogos privados

Demo

http://54.234.131.102:8080/

BrCloudhttps://github.com/brcloudservices/rancher-catalog.git

Jonhttps://github.com/jonathanbaraldi/rancher-catalog.git

Obrigado