Docker em CI
De desenvolvimento para CI
Apresentação
Vinícius Fernandes
Desenvolvedor na ThoughtWorks
@viniciusffj
Rodrigo Morais
Desenvolvedor na ThoughtWorks
github.com/rodrigo-morais
Um pouco de história ...
$ docker run project-image
CI?
Privado Público
Privado
Fiscalize
$ docker build -t fiscalize .
$ docker run -i -t -p "4567:4567" fiscalize
Como faço?
● Criar instância na AWS EC2
● Configurar consumidor OAuth
● Configurar o driver no Drone
● Ativar repositório
● Criar .drone.yml
$ docker-machine create --driver amazonec2 
--amazonec2-access-key AK...A --amazonec2-secret-key X...J 
--amazonec2-security-group drone --amazonec2-subnet-id su... 
--amazonec2-vpc-id vp.. --amazonec2-region us-west-2 
--amazonec2-zone a 
tdc-drone
$ eval "$(docker-machine env tdc-drone)"
$ docker run 
--volume /var/lib/drone:/var/lib/drone 
--volume /var/run/docker.sock:/var/run/docker.sock 
--env-file dronerc 
--restart=always 
--publish=80:8000 
--detach=true 
--name=drone 
drone/drone:0.4
Público
Calculator
$ docker build -t calculator .
$ docker run -it calculator
Como faço?
● Criar usuário travis-ci.org
● Ativar repositório
● Criar .travis.yml
Concluindo
Perguntas?

Docker em CI