Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Microsoft Experiences '16 : Docker Windows + Co...

Microsoft Experiences '16 : Docker Windows + Continuous Delivery = <3

Laurent Grangeau

October 05, 2016
Tweet

More Decks by Laurent Grangeau

Other Decks in Technology

Transcript

  1. Windows Server & Hyper-V containers N° 4 Web tier Container

    A Container B Container C App tier DB tier
  2. • Have a replicable environment • Build once, run everywhere

    • No more « it runs locally » Continuous delivery Why Docker ? N° 7
  3. The new Continuous Delivery chain N° 8 APP IN PAAS

    Dockerfile Source Control Manager compose Git Hook Deploy Continuous Integration Topology CaaS CD Platform Outside External xPaaS Ambassadors Applications & xPaaS ITaaS
  4. Maturity and savings levels N° 9 CONTAINED AUTOMATED EMPOWERED MANAGED

    Containerize App. Automate in continuous delivery platform Deploy on central Docker Execution Platform Transform to leverage on built- in features: -Discovery -Elasticity -High availability Transform to in- house standards: - Monitoring - Logging - Billing Transform to fit with deployment topologies Use managed services (xPaaS): DB, Cache, MQ... MICRO SERVICES Leverage on platform security standards Dynamic scale, hybrid cloud usecase
  5. echo "##enter container of build ##" git clone %repogit% echo

    "Clone done" set PATH=%PATH%;C:\Windows\Microsoft.NET\Framework\v4.0.30319 cd c:\ cd %slnpath% nuget restore msbuild cd / robocopy C:\%slnpath% c:\work\output /E powershell -Command "(Get-Content c:\build.txt) -replace 'mybuild', $Env:mybuild | Set-Content c:\build.xml" curl.exe -v -u gbizet:XXXXXXX http://178.33.83.137/app/rest/buildQueue - -request POST --header "Content-Type:application/xml" --data-binary @build.xml dockerfile Builder image N° 11 FROM guibizet/git ENV repogit repogit ENV slnpath tests ENV mybuild nameofcontainer RUN ["choco","install","nuget.commandline","-y"] RUN ["choco","install","microsoft-build- tools","-y"] RUN ["choco","install","curl","-y"] RUN mkdir work VOLUME c:\\work COPY ./builder.bat . COPY ./build.txt . CMD builder.bat
  6. Platform Continuous delivery platform N° 12 Github Build the app

    in a container Grab log of ran container Store artifacts on TC master Generate app image Deploy on Docker Service hook Build the app Store artifacts Generate app image Run the app image
  7. • Create your own builder image • Build your application

    inside the builder image • Leverage on every aspect of Docker Takeaway N° 15
  8. Notez cette session Et tentez de gagner un Surface Book

    Doublez votre chance en répondant aussi au questionnaire de satisfaction globale * Le règlement est disponible sur demande au commissariat général de l’exposition. Image non-contractuelle