SlideShare a Scribd company logo
1 of 14
Download to read offline
Czyli jak Docker pozwala dostarczać środowisko testowe
razem z aplikacją.
BUILD FAILUJE? PRZECIEŻ U MNIE DZIAŁAŁO.
Rafał Sumisławski – NetworkedAssets
Atlassian User Group Lower Silesia 25.03.2015
25.03.2015 2AUG Lower Silesia
2.8.15
1.7.0_17
8.0.11
6.0
2.8.15
1.7.0_17
8.0.11
6.0
2.8.15
1.7.0_17
8.0.11
6.0
Środowisko działania aplikacji
25.03.2015 3AUG Lower Silesia
2.8.19
1.8.0_40
8.0.20
14.04.2
2.6.21
1.7.0_48
8.0.17
14.04.2
2.8.15
1.7.0_17
8.0.11
6.0
Środowisko działania aplikacji
25.03.2015 4
Anywhere
AUG Lower Silesia
Build, Ship, Run,and
Any App
• Zarzadzanie w stylu gita
• Docker Hub
• Git Hub?
• Zarządzanie Dockerami
• Dockerfile
Zarządzanie kerami
•
Zarządzanie Dockerami
Virtual Machine Docker
keramiZarządzanie DockeramiZarządzanie
•
keramiZarządzanie Dockerami
• Dockerfile
•
•
Docker
•
gita•
Docker
•
• Zarzadzanie w stylu
Docker Hub
• Git Hub?
stylu gitagitaFROM java:openjdk-8-jdk
ENV MAVEN_VERSION 3.2.5
RUN curl -sSL http://archive.apache.org/dist/maven/maven-
3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz 
| tar xzf - -C /usr/share 
&& mv /usr/share/apache-maven-$MAVEN_VERSION /usr/share/maven 
&& ln -s /usr/share/maven/bin/mvn /usr/bin/mvn
ENV MAVEN_HOME /usr/share/maven
CMD ["mvn", "--version"]
• Docker Engine
• namespaces + cgroups – izolacja zasobów
• union file system
25.03.2015 5AUG Lower Silesia
Czym jest Docker?
Operating-system-level Virtualization
25.03.2015 6AUG Lower Silesia
1 Docker – 1 Proces
Proces główny
• PID 1
• Czas życia kontenera taki sam jak procesu głównego
• Std I/O Dockera = Std I/O procesu
Zalety:
• Łatwiejsze zarządzanie
• Separacja
Wady:
• Separacja ;)
• Dużo Dockerów
25.03.2015 7AUG Lower Silesia
Wystarczą dwa lata żeby
napełnić ocean
25.03.2015 8AUG Lower Silesia
Bamboo i Docker
Bamboo 5.8
Docker Task – Uruchamianie Dockerów
podczas buildu
Bamboo 5.7
Uruchamianie Agentów Bamboo na Dockerze
25.03.2015 9AUG Lower Silesia
Bamboo Docker Task
• Build a Docker image
• Run a Docker container
• Forground
• Background
• Push a Docker image to Docker Registry
Dockerfile może być pobierany z VCS
lub wpisany w Bamboo
25.03.2015 10AUG Lower Silesia
Przykładowa konfiguracja
25.03.2015 11AUG Lower Silesia
Docker w CI (Bamboo)
Zalety:
• Nie potrzeba niczego poza Dockerem
• Reset środowiska po każdym buildzie
• Środowisko identyczne z deweloperski i produkcyjnym
• Łatwa modyfikacja i powielanie środowiska testowego
Wady:
• Koszt stworzenia Dockerów
• Dodatkowa warstwa
• Braki w Docker Task
25.03.2015 12AUG Lower Silesia
Agenci Bamboo jako
kontenery Dockera (Bamboo 5.7)
Obrazy:
• atlassian/bamboo-base-agent
• atlassian/bamboo-java-agent
docker run -e HOME=/root/ -e BAMBOO_SERVER=http://192.168.16.11:8085 -i -t atlassian/bamboo-java-agent:5.6.1
Żeby szybko tworzyć i aktualizować agentów Bamboo
Po co?
25.03.2015 13AUG Lower Silesia
Podsumowanie
Możliwość dostarczania aplikacji razem ze środowiskiem
• Izolacja od czynników zewnętrznych
• Małe narzuty
• Dockerfile – tekstowy opis środowiska
• Mechanizmy dystrybucji obrazów
• Kompatybilność z Bamboo
„Works on my machine”
„Works on THE machine”
„Works everywhere”
ul. Legnicka 50
54-204 Wrocław
tel +48 71 358 26 79
fax +48 71 358 26 78
www.networkedassets.pl
Dziękuję za uwagę!
Rafał Sumisławski
rsumislawski@networkedassets.org

More Related Content

Viewers also liked

Atlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiami
Atlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiamiAtlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiami
Atlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiamiNetworkedAssets
 
Joomla Day Poland 15 - Docker
Joomla Day Poland 15 - DockerJoomla Day Poland 15 - Docker
Joomla Day Poland 15 - DockerLukas Lesniewski
 
Docker Networking - Boulder Linux Users Group (BLUG)
Docker Networking - Boulder Linux Users Group (BLUG)Docker Networking - Boulder Linux Users Group (BLUG)
Docker Networking - Boulder Linux Users Group (BLUG)Dan Mackin
 
Networking in Docker Containers
Networking in Docker ContainersNetworking in Docker Containers
Networking in Docker ContainersAttila Kanto
 
Lessons learned in reaching multi-host container networking
Lessons learned in reaching multi-host container networkingLessons learned in reaching multi-host container networking
Lessons learned in reaching multi-host container networkingTony Georgiev
 
Multi host networking with docker
Multi host networking with dockerMulti host networking with docker
Multi host networking with dockerMyoungSu Shin
 
Docker Networking – Running multi-host applications
Docker Networking – Running multi-host applicationsDocker Networking – Running multi-host applications
Docker Networking – Running multi-host applicationsChristina Rasimus
 
Docker Multi Host Networking, Rachit Arora, IBM
Docker Multi Host Networking, Rachit Arora, IBMDocker Multi Host Networking, Rachit Arora, IBM
Docker Multi Host Networking, Rachit Arora, IBMNeependra Khare
 
Single Host Docker Networking
Single Host Docker NetworkingSingle Host Docker Networking
Single Host Docker Networkingallingeek
 
#eventcepcja Networking Izabela Górska (Business Link Warszawa)
#eventcepcja Networking Izabela Górska (Business Link Warszawa)#eventcepcja Networking Izabela Górska (Business Link Warszawa)
#eventcepcja Networking Izabela Górska (Business Link Warszawa)Edyta Kowal
 
Octo talk : docker multi-host networking
Octo talk : docker multi-host networking Octo talk : docker multi-host networking
Octo talk : docker multi-host networking Hervé Leclerc
 
Docker-OVS
Docker-OVSDocker-OVS
Docker-OVSsnrism
 
Docker networking Tutorial 101
Docker networking Tutorial 101Docker networking Tutorial 101
Docker networking Tutorial 101LorisPack Project
 
Docker Networking Deep Dive
Docker Networking Deep DiveDocker Networking Deep Dive
Docker Networking Deep DiveDocker, Inc.
 
Docker networking basics & coupling with Software Defined Networks
Docker networking basics & coupling with Software Defined NetworksDocker networking basics & coupling with Software Defined Networks
Docker networking basics & coupling with Software Defined NetworksAdrien Blind
 

Viewers also liked (16)

Atlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiami
Atlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiamiAtlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiami
Atlassian User Group Lower Silesia March 2015 Zarządzanie wymaganiami
 
Joomla Day Poland 15 - Docker
Joomla Day Poland 15 - DockerJoomla Day Poland 15 - Docker
Joomla Day Poland 15 - Docker
 
Docker Networking - Boulder Linux Users Group (BLUG)
Docker Networking - Boulder Linux Users Group (BLUG)Docker Networking - Boulder Linux Users Group (BLUG)
Docker Networking - Boulder Linux Users Group (BLUG)
 
Networking in Docker Containers
Networking in Docker ContainersNetworking in Docker Containers
Networking in Docker Containers
 
Lessons learned in reaching multi-host container networking
Lessons learned in reaching multi-host container networkingLessons learned in reaching multi-host container networking
Lessons learned in reaching multi-host container networking
 
Multi host networking with docker
Multi host networking with dockerMulti host networking with docker
Multi host networking with docker
 
Docker Networking – Running multi-host applications
Docker Networking – Running multi-host applicationsDocker Networking – Running multi-host applications
Docker Networking – Running multi-host applications
 
Docker Multi Host Networking, Rachit Arora, IBM
Docker Multi Host Networking, Rachit Arora, IBMDocker Multi Host Networking, Rachit Arora, IBM
Docker Multi Host Networking, Rachit Arora, IBM
 
Single Host Docker Networking
Single Host Docker NetworkingSingle Host Docker Networking
Single Host Docker Networking
 
#eventcepcja Networking Izabela Górska (Business Link Warszawa)
#eventcepcja Networking Izabela Górska (Business Link Warszawa)#eventcepcja Networking Izabela Górska (Business Link Warszawa)
#eventcepcja Networking Izabela Górska (Business Link Warszawa)
 
Docker Networking
Docker NetworkingDocker Networking
Docker Networking
 
Octo talk : docker multi-host networking
Octo talk : docker multi-host networking Octo talk : docker multi-host networking
Octo talk : docker multi-host networking
 
Docker-OVS
Docker-OVSDocker-OVS
Docker-OVS
 
Docker networking Tutorial 101
Docker networking Tutorial 101Docker networking Tutorial 101
Docker networking Tutorial 101
 
Docker Networking Deep Dive
Docker Networking Deep DiveDocker Networking Deep Dive
Docker Networking Deep Dive
 
Docker networking basics & coupling with Software Defined Networks
Docker networking basics & coupling with Software Defined NetworksDocker networking basics & coupling with Software Defined Networks
Docker networking basics & coupling with Software Defined Networks
 

Similar to Atlassian User Group Lower Silesia BUILDFAILUJE? PRZECIEŻ U MNIE DZIAŁAŁO

Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...
Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...
Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...Janusz Nowak
 
SQL Server + docker - pierwsze kroki
SQL Server + docker - pierwsze krokiSQL Server + docker - pierwsze kroki
SQL Server + docker - pierwsze krokiBartosz Ratajczyk
 
Spa i .net core
Spa i .net coreSpa i .net core
Spa i .net coreVimanet
 
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...Lukasz Kaluzny
 
Kontenery w Azure
Kontenery w AzureKontenery w Azure
Kontenery w AzureChmurowisko
 
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...Future Processing
 
HYC - Angular stań się kanciastym
HYC - Angular stań się kanciastymHYC - Angular stań się kanciastym
HYC - Angular stań się kanciastymDariusz Jagieło
 
Przenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker ComposePrzenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker ComposeMariusz Bąk
 
Piątek z XSolve - TravisCI & Continuous Delivery
Piątek z XSolve - TravisCI & Continuous DeliveryPiątek z XSolve - TravisCI & Continuous Delivery
Piątek z XSolve - TravisCI & Continuous DeliveryXSolve
 
vSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupu
vSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupuvSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupu
vSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupuMaciej Stopa
 
Praktyczne użycie chmury 3 kroki
Praktyczne użycie chmury 3 krokiPraktyczne użycie chmury 3 kroki
Praktyczne użycie chmury 3 krokiRyszard Dałkowski
 
Co nowego w ASP.NET MVC 4?
Co nowego w ASP.NET MVC 4?Co nowego w ASP.NET MVC 4?
Co nowego w ASP.NET MVC 4?tkryskiewicz
 
Wykorzystanie chmury Microsoft Azure w scenariuszach dev&test
Wykorzystanie chmury Microsoft Azure w scenariuszach dev&testWykorzystanie chmury Microsoft Azure w scenariuszach dev&test
Wykorzystanie chmury Microsoft Azure w scenariuszach dev&testJarek Sokolnicki
 
2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...Janusz Nowak
 
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...Future Processing
 

Similar to Atlassian User Group Lower Silesia BUILDFAILUJE? PRZECIEŻ U MNIE DZIAŁAŁO (20)

Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...
Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...
Use Azure DevOps to deploy Azure Function in Docker on Raspberry PI - dotNetC...
 
Scenariusze Azure
Scenariusze AzureScenariusze Azure
Scenariusze Azure
 
Infrastructure As Code
Infrastructure As CodeInfrastructure As Code
Infrastructure As Code
 
SQL Server + docker - pierwsze kroki
SQL Server + docker - pierwsze krokiSQL Server + docker - pierwsze kroki
SQL Server + docker - pierwsze kroki
 
Spa i .net core
Spa i .net coreSpa i .net core
Spa i .net core
 
Liquibase w praktyce
Liquibase w praktyceLiquibase w praktyce
Liquibase w praktyce
 
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
 
Kontenery w Azure
Kontenery w AzureKontenery w Azure
Kontenery w Azure
 
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
 
HYC - Angular stań się kanciastym
HYC - Angular stań się kanciastymHYC - Angular stań się kanciastym
HYC - Angular stań się kanciastym
 
Przenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker ComposePrzenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker Compose
 
Piątek z XSolve - TravisCI & Continuous Delivery
Piątek z XSolve - TravisCI & Continuous DeliveryPiątek z XSolve - TravisCI & Continuous Delivery
Piątek z XSolve - TravisCI & Continuous Delivery
 
vSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupu
vSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupuvSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupu
vSphere Data Protection czyli jak utracic dane dzieki oprogramowaniu do backupu
 
Praktyczne użycie chmury 3 kroki
Praktyczne użycie chmury 3 krokiPraktyczne użycie chmury 3 kroki
Praktyczne użycie chmury 3 kroki
 
Azuredevops
AzuredevopsAzuredevops
Azuredevops
 
Co nowego w ASP.NET MVC 4?
Co nowego w ASP.NET MVC 4?Co nowego w ASP.NET MVC 4?
Co nowego w ASP.NET MVC 4?
 
Wykorzystanie chmury Microsoft Azure w scenariuszach dev&test
Wykorzystanie chmury Microsoft Azure w scenariuszach dev&testWykorzystanie chmury Microsoft Azure w scenariuszach dev&test
Wykorzystanie chmury Microsoft Azure w scenariuszach dev&test
 
2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...
 
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
 
Ansible w praktyce
Ansible w praktyceAnsible w praktyce
Ansible w praktyce
 

Atlassian User Group Lower Silesia BUILDFAILUJE? PRZECIEŻ U MNIE DZIAŁAŁO

  • 1. Czyli jak Docker pozwala dostarczać środowisko testowe razem z aplikacją. BUILD FAILUJE? PRZECIEŻ U MNIE DZIAŁAŁO. Rafał Sumisławski – NetworkedAssets Atlassian User Group Lower Silesia 25.03.2015
  • 2. 25.03.2015 2AUG Lower Silesia 2.8.15 1.7.0_17 8.0.11 6.0 2.8.15 1.7.0_17 8.0.11 6.0 2.8.15 1.7.0_17 8.0.11 6.0 Środowisko działania aplikacji
  • 3. 25.03.2015 3AUG Lower Silesia 2.8.19 1.8.0_40 8.0.20 14.04.2 2.6.21 1.7.0_48 8.0.17 14.04.2 2.8.15 1.7.0_17 8.0.11 6.0 Środowisko działania aplikacji
  • 4. 25.03.2015 4 Anywhere AUG Lower Silesia Build, Ship, Run,and Any App
  • 5. • Zarzadzanie w stylu gita • Docker Hub • Git Hub? • Zarządzanie Dockerami • Dockerfile Zarządzanie kerami • Zarządzanie Dockerami Virtual Machine Docker keramiZarządzanie DockeramiZarządzanie • keramiZarządzanie Dockerami • Dockerfile • • Docker • gita• Docker • • Zarzadzanie w stylu Docker Hub • Git Hub? stylu gitagitaFROM java:openjdk-8-jdk ENV MAVEN_VERSION 3.2.5 RUN curl -sSL http://archive.apache.org/dist/maven/maven- 3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz | tar xzf - -C /usr/share && mv /usr/share/apache-maven-$MAVEN_VERSION /usr/share/maven && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn ENV MAVEN_HOME /usr/share/maven CMD ["mvn", "--version"] • Docker Engine • namespaces + cgroups – izolacja zasobów • union file system 25.03.2015 5AUG Lower Silesia Czym jest Docker? Operating-system-level Virtualization
  • 6. 25.03.2015 6AUG Lower Silesia 1 Docker – 1 Proces Proces główny • PID 1 • Czas życia kontenera taki sam jak procesu głównego • Std I/O Dockera = Std I/O procesu Zalety: • Łatwiejsze zarządzanie • Separacja Wady: • Separacja ;) • Dużo Dockerów
  • 7. 25.03.2015 7AUG Lower Silesia Wystarczą dwa lata żeby napełnić ocean
  • 8. 25.03.2015 8AUG Lower Silesia Bamboo i Docker Bamboo 5.8 Docker Task – Uruchamianie Dockerów podczas buildu Bamboo 5.7 Uruchamianie Agentów Bamboo na Dockerze
  • 9. 25.03.2015 9AUG Lower Silesia Bamboo Docker Task • Build a Docker image • Run a Docker container • Forground • Background • Push a Docker image to Docker Registry Dockerfile może być pobierany z VCS lub wpisany w Bamboo
  • 10. 25.03.2015 10AUG Lower Silesia Przykładowa konfiguracja
  • 11. 25.03.2015 11AUG Lower Silesia Docker w CI (Bamboo) Zalety: • Nie potrzeba niczego poza Dockerem • Reset środowiska po każdym buildzie • Środowisko identyczne z deweloperski i produkcyjnym • Łatwa modyfikacja i powielanie środowiska testowego Wady: • Koszt stworzenia Dockerów • Dodatkowa warstwa • Braki w Docker Task
  • 12. 25.03.2015 12AUG Lower Silesia Agenci Bamboo jako kontenery Dockera (Bamboo 5.7) Obrazy: • atlassian/bamboo-base-agent • atlassian/bamboo-java-agent docker run -e HOME=/root/ -e BAMBOO_SERVER=http://192.168.16.11:8085 -i -t atlassian/bamboo-java-agent:5.6.1 Żeby szybko tworzyć i aktualizować agentów Bamboo Po co?
  • 13. 25.03.2015 13AUG Lower Silesia Podsumowanie Możliwość dostarczania aplikacji razem ze środowiskiem • Izolacja od czynników zewnętrznych • Małe narzuty • Dockerfile – tekstowy opis środowiska • Mechanizmy dystrybucji obrazów • Kompatybilność z Bamboo „Works on my machine” „Works on THE machine” „Works everywhere”
  • 14. ul. Legnicka 50 54-204 Wrocław tel +48 71 358 26 79 fax +48 71 358 26 78 www.networkedassets.pl Dziękuję za uwagę! Rafał Sumisławski rsumislawski@networkedassets.org