Diferentes ambientes de testes em uma mesma máquina

Ultimamente tenho lido bastante sobre o Docker, porém ainda não conseguir responder algumas questões. Se alguém puder me ajudar, agradeço.

  1. Atualmente trabalho como Tester em 2 projetos distintos, com isso já dá para imaginar a trabalheira que dá ficar alternando de ambiente para realizar os testes, isso quando dentro de cada projeto não há várias releases sendo construídas e testadas em paralelo. Sendo assim, pensei em utilizar o Docker para poder criar containers específicos para cada projeto e release. Isso é possível de ser feito? Alguém já teve alguma experiência assim?

Olá, @Juliano-Niero-Moreno, boa tarde.

É possível sim, basta você criar um Dockerfile para cada projeto. O seu Dockerfile deve ser versionado junto com o projeto. Quando for alternar de projeto você pode executar/pausar o container que desejar.

Exemplo:

	| -- projeto1
	    	|-- Dockerfile
		|-- src
        | -- projeto2
	    	|-- Dockerfile
		|-- src

Espero ter ajudado.

"Não duvido mais do que já suponho"
(Gandalf)

Me ajudou sim e muito.

Será que você pode me tirar mais uma dúvida?

Eu vi em vários artigos comentários sobre o ambiente cloud do Docker, porém eu penso que é possível deixar tudo na minha máquina local (servidor e cliente). É possível isso mesmo?

Você tem algum tutorial para indicar? Já li vários, mas dicas de referência é sempre bem vinda.

Obrigado pela ajuda.

Abs,
Juliano

Pode usar sim, a única coisa que vai precisar na Internet será a image utilizada e os pacotes utilizados para executar sua aplicação. Isso será baixado somente a primeira vez. Então, quando outro Dev/Tester foi executar, pode demorar um pouco mais na primeira vez para criar e configurar seu ambiente.

Referência é a própria Documentação. O @stefanteixeira tem alguns posts sobre Docker para testers em seu blog pessoal.

É isso aí, seja bem vindo! Bons estudos e parabéns pela iniciativa de buscar novos conhecimentos e desafios, precisamos de mais testers assim.

"Não duvido mais do que já suponho"
(Gandalf)

@Juliano-Niero-Moreno
No final do ano passado apresentei uma palestra introdutória sobre Docker no TDC Porto Alegre e no Testadores 2015.

Você pode ver a gravação da palestra no Testadores aqui: https://www.eventials.com/locaweb/events/testadores-2a-edicao/?next=/locaweb/o-fantastico-mundo-de-docker-com-stefan-teixeira/#close

Os slides estão no SlideShare: http://www.slideshare.net/stefanteixeira/tdc-2015-poa-o-fantstico-mundo-de-docker

No final, tem uma demonstração subindo uma aplicação Python + PostgreSQL com Docker, referente a esse repositório aqui: https://github.com/stefanteixeira/todoapp-flask

Nos últimos slides também recomendo dois livros que li, que são muito bons, o The Docker Book (https://www.amazon.com.br/Docker-Book-Containerization-virtualization-English-ebook/dp/B00LRROTI4/ref=sr_1_1?ie=UTF8&qid=1462571945&sr=8-1&keywords=the+docker+book) e o Docker Cookbook da Packt (https://www.packtpub.com/virtualization-and-cloud/docker-cookbook). O The Docker Book foi o primeiro livro que li sobre Docker, ainda em 2014, e ajudou muito a entender os conceitos principais. O livro é barato (22 Temers) e recomendo fortemente.

Abs

@Juliano-Niero-Moreno Que tipo de teste tu faz?

Como funciona esse teu “alternando ambiente” em cada projeto? Desculpe se a pergunta foi idiota, porque a nível de UI por exemplo, basta acessar o root de cada projeto e mandar rodar o teste (assim que eu faço pelo menos), por isso estou na dúvida como/porque tu alterna ambientes para testar.

Novamente, desculpa se a pergunta não faz sentido, mas sou novo com docker e tu me explicando isso talvez o assunto possa me interessar :)

@stefanteixeira Muito obrigado pelas dicas.

Já estou correndo atrás das referências que você passou.

@Rafael-s

São dois projetos de aplicação WEB distintas, onde cada uma tem sua própria base de dados e utilizamd JBoss como servidor de aplicação.

Então toda vez que preciso mudar de projeto, preciso:

  • fazer checkout no git
  • realizar pull do git
  • alterar o arquivo oracle do Jboss para apontar para a base correta
  • realizar deploy da aplicação
  • subir a aplicação

Sei que alguns passos eu consigo economizar com script, porém como muitas vezes trabalhos com releases diferentes de cada aplicação, isso se torna mais difícil. Sendo assim, pensei em utilizar o Docker para facilitar essa alternância de ambientes.

Eu também estou iniciando com Docker, e estou no momento de uma entrega importante, assim que conseguir realizar essa experiência volto aqui para falar dos resultados.

Log in to reply

Looks like your connection to Agile Testers was lost, please wait while we try to reconnect.