This document contains several quotes and teachings from the ancient Indian philosopher Chanakya (370BCE-283BCE). Some of the key ideas expressed are that determination can help one achieve difficult goals, maintaining peace requires great penance, learning from others' mistakes is wise, and that a person's character spreads in all directions unlike a flower's fragrance which depends on the wind.
Continuous Delivery med Tutum och Docker i molnet.
Code Night #4 - 2016-02-11
Om man vill ställa om en befintlig utvecklingsverksamhet till Continuous Delivery gör man klokt i att införa förändringen stegvis, i en kontinuerlig förbättringsprocess. Det ger de bästa chanserna att lyckas. Men det är normalt en lång process eftersom många människor är inblandade och att vi under tiden måste upprätthålla leveranser till produktion.
Men, om vi för ett ögonblick drömmer oss bort och tänker bort ärvda system, stela driftsmiljöer och obsoleta rutiner och istället bara gör som man verkligen skulle vilja göra, från scratch, nu 2016, hur skulle man göra då?
Vi har gjort precis det!
Denna kväll tar vi med oss er på en resa hur man idag kan bygga en systemproduktionslina baserad på Docker, Tutum, GoCD och Amazon EC2, från källkodsrepo till produktionsmiljö. Vi går igenom hur det är uppbyggt och fungerar och hur man arbetar med det. Vi kommer att arbeta med pipelinen och ett enkelt målsystem.
Vår story baseras på utvecklingsresan med http://www.welcomeapp.se hösten 2015 där vi på kort tid tog vi fram frontendsystem, backendsystem med klustring, lastbalansering, backup, MQ och webbsajt samt flera pipelines.
Föreläsare:
Daniel Marell och Kristoffer Vidmo - Continuous Delivery evangelister på C.A.G.
Både Daniel och Kristoffer har gedigna bakgrunder som arkitekter och utvecklare och fokuserar idag på metoder och verktyg för att hjälpa kunder att implementera Continuous Delivery.
This document contains several quotes and teachings from the ancient Indian philosopher Chanakya (370BCE-283BCE). Some of the key ideas expressed are that determination can help one achieve difficult goals, maintaining peace requires great penance, learning from others' mistakes is wise, and that a person's character spreads in all directions unlike a flower's fragrance which depends on the wind.
Continuous Delivery med Tutum och Docker i molnet.
Code Night #4 - 2016-02-11
Om man vill ställa om en befintlig utvecklingsverksamhet till Continuous Delivery gör man klokt i att införa förändringen stegvis, i en kontinuerlig förbättringsprocess. Det ger de bästa chanserna att lyckas. Men det är normalt en lång process eftersom många människor är inblandade och att vi under tiden måste upprätthålla leveranser till produktion.
Men, om vi för ett ögonblick drömmer oss bort och tänker bort ärvda system, stela driftsmiljöer och obsoleta rutiner och istället bara gör som man verkligen skulle vilja göra, från scratch, nu 2016, hur skulle man göra då?
Vi har gjort precis det!
Denna kväll tar vi med oss er på en resa hur man idag kan bygga en systemproduktionslina baserad på Docker, Tutum, GoCD och Amazon EC2, från källkodsrepo till produktionsmiljö. Vi går igenom hur det är uppbyggt och fungerar och hur man arbetar med det. Vi kommer att arbeta med pipelinen och ett enkelt målsystem.
Vår story baseras på utvecklingsresan med http://www.welcomeapp.se hösten 2015 där vi på kort tid tog vi fram frontendsystem, backendsystem med klustring, lastbalansering, backup, MQ och webbsajt samt flera pipelines.
Föreläsare:
Daniel Marell och Kristoffer Vidmo - Continuous Delivery evangelister på C.A.G.
Både Daniel och Kristoffer har gedigna bakgrunder som arkitekter och utvecklare och fokuserar idag på metoder och verktyg för att hjälpa kunder att implementera Continuous Delivery.
Du har säkert hört begreppet många gånger vid det här laget. Continuous Delivery är en av de hetaste trenderna just nu inom mjukvaruutvecklingsindustrin. Idéen är enkel: leverera mer mjukvara, snabbare, med bibehållen kvalitet. Men hur gör man det egentligen?
Testare i continuousvärlden - vad gör jag om dagarna.ADDQ
Vad är egentligen Continuous och DevOps? Men framför allt, hur uppnår man kvalité och vad gör man som testare i ett sånt team?
Hur arbetar man egentligen med test om man släpper kod flera gånger om dagen?
Hur QA säkrar man all automation som krävs i och med devOps?
Du har säkert hört begreppet många gånger vid det här laget. Continuous Delivery är en av de hetaste trenderna just nu inom mjukvaruutvecklingsindustrin. Idéen är enkel: leverera mer mjukvara, snabbare, med bibehållen kvalitet. Men hur gör man det egentligen?
Testare i continuousvärlden - vad gör jag om dagarna.ADDQ
Vad är egentligen Continuous och DevOps? Men framför allt, hur uppnår man kvalité och vad gör man som testare i ett sånt team?
Hur arbetar man egentligen med test om man släpper kod flera gånger om dagen?
Hur QA säkrar man all automation som krävs i och med devOps?
1. Enheten för IT-stöd och
systemutveckling, ITS
Docker
i NyA
Jonas.A.Andersson@umu.se
2. Vad är docker?
• Open Source-projekt
• Företag
• Verktygslåda för containrar
– Skapa
– Leverera
• “Docker is not a virtualization technology,
it’s an application delivery technology”
https://blog.docker.com/2016/03/containers-are-not-vms/
3. Image ! Container
• En container är en instans av en image
• En image är ett snapshot av en container
• En image är
– Stateless
– Immutable
• En container ”ska antas vara”
– Stateless
– Immutable
3
4. Portabilitet
• PODA - Package Once Deploy Anywhere
Mac OS X Ubuntu CentOSWindows
Image
Image from http://blog.arungupta.me/docker-kubernetes-microservices-devoxx-2015/
5. Portabilitet
• PODA - Package Once Deploy Anywhere
Dev Extern test ProdTest
Image
Image from http://blog.arungupta.me/docker-kubernetes-microservices-devoxx-2015/
6. Varför Docker?
• Portabilitet - samma image i dev, test, prod
• Distribution – standardiserad effektiv infrastruktur
– Registry
– Images bygger på varandra
• Automatisering
– Mindre tid för installation och konfiguration
• Snabbt!
• Isolering - enklare resonera om, felsöka, testa
• Säkerhet - applikation isolerad i container
20. Enheten för IT-stöd och
systemutveckling, ITS
20
libcontainer
• Libcontainer provides a native Go implementation for creating containers with
namespaces, cgroups, capabilities, and filesystem access controls. It allows
you to manage the lifecycle of the container performing additional operations
after the container is created.
• Libcontainer provides a standard interface to making sandboxes or containers
inside an OS. With it, a container can interface in a predictable way with the
host OS's resources, security, and behavioral controls, and the app inside it can
be controlled as expected.
• libcontainer is the first attempt to standardize the way apps are packed up,
delivered, and run in isolation
• As libcontainer is ported to other languages, Docker will likely show up in
places it hasn't been deployed yet. Case in point: Microsoft Windows.
• https://github.com/opencontainers/runc/tree/master/libcontainer
• http://www.infoworld.com/article/2607966/application-virtualization/4-reasons-why-docker-s-
libcontainer-is-a-big-deal.html