Johan Janssen, Info Support. Continuous delivery Docker Jenkins Questions.

Slides:



Advertisements
Similar presentations
Kat Passen.  Open source platform to manage deployment  Acts as a layer between an OS and an application  Images not dependent on system – similar.
Advertisements

Introduction to Docker Jitendra Kumar Patel Saturday, January 24, 2015.
Docker Martin Meyer Agenda What is Docker? –Docker vs. Virtual Machine –History, Status, Run Platforms –Hello World Images and Containers.
Docker Martin Meyer Agenda What is Docker? –Docker vs. Virtual Machine –History, Status, Run Platforms Hello World Terminology: Image and.
Johan Janssen, Info Support. Continuous delivery Docker Jenkins Questions.
Johan Janssen, Info Support. Internet of Things Docker and Java on a Raspberry Pi Jenkins Questions.
Apache : Installation, Configuration, Basic Security Presented by, Sandeep K Thopucherela, ECE Department.
5205 – IT Service Delivery and Support
DataStax Enterprise on Microsoft Azure. BrightView Analytics provides a robust Software-as-a-Service (SaaS) business solution, which delivers critical.
Installing and Setting up mongoDB replica set PREPARED BY SUDHEER KONDLA SOLUTIONS ARCHITECT.
Microsoft vs Linux Microsoft Applications compared to free opensource software.
Software Deployment at Johnston Community College Lauren Bradley | Windows System Administrator at Johnston Community College Lauren Bradley | Windows.
Johan Info Support. Internet of things Continuous delivery Docker Jenkins Questions.
Introduction to Windows XP Professional Chapter 2 powered by dj.
Windows Azure Conference 2014 Running Docker on Windows Azure.
MCDevOps Infrastructure In One Hour. Sponsors Improving Enterprises Software Development.
Tutorial 11 Installing, Updating, and Configuring Software
Hands-On Virtual Computing
Cassandra Installation Guide and Example Lecturer : Prof. Kyungbaek Kim Presenter : I Gde Dharma Nugraha.
ServerProtect 5.58 for NT Tech Support Dep.. Table of Contents Introduction and Installation Managing ServerProtect Configuring ServerProtect Maintaining.
MAE Continuous Integration Administration guide July 8th, 2013.
Module 1: Installing Microsoft Windows XP Professional.
Microsoft Windows XP Professional MCSE Exam
Johan Janssen, Info Why Docker Different options Things to consider Questions.
Docker and Container Technology
Automating Installations by Using the Microsoft Windows 2000 Setup Manager Create setup scripts simply and easily. Create and modify answer files and UDFs.
Advancing CernVM-FS and its Development Infrastructure José Molina Colmenero CERN EP-SFT.
Alfresco deployment with Docker Andrea Agili Software Engineer – Dr Wolf srl Tommaso Visconti DevOps – Dr Wolf srl.
IBM Software Group © 2008 IBM Corporation IBM Tivoli Provisioning Manager 7.1 OS Management with TPM for OS Deployment.
Lucas Jellema JavaOne 2015, San Francisco, 26th October 2015 Java Developer Intro to Environment Management with Vagrant, Puppet, and Docker.
SCI-BUS is supported by the FP7 Capacities Programme under contract nr RI CloudBroker usage Zoltán Farkas MTA SZTAKI LPDS
Using Docker in a CyVerse World. To install Docker GO TO Click “Get Started”, follow the directions.
11 DEPLOYING AN UPDATE MANAGEMENT INFRASTRUCTURE Chapter 6.
Linux Containers and Docker
bitcurator-access-webtools Quick Start Guide
Kickstart drupal development
Global Azure Bootcamp 2017 Linz, Austria
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
WordPress Introduction
Create setup scripts simply and easily.
Reproducible Bioinformatics
Efficient development and deployment of Hydra projects using Vagrant
Docker and Azure Container Service
Docker Birthday #3.
SQL Server Containers: End-to-End
In-Depth Introduction to Docker
Docker – kontejnerizacija na serveru Vedran Vučetić, SPAN
4th Forum How to easily offer your application as a self-service template by using OpenShift and GitLab-CI 4th Forum Alberto.
Containers and Virtualisation
Atomic Gerard Braad FUDCon Phnom Penh 2016
Andrew Pruski SQL Server & Containers
Introduction to Docker
Microservices in Dyalog APL Morten Kromberg – 11th January 2018
Using docker containers
Oracle DB and Docker Get Your Dockerized Oracle Sandbox Running in the Cloud or On- Premises Martin Knazovicky Dbvisit Software.
Zlatko Stamatov JavaSkop 13 December 2015
Intro to Docker Containers and Orchestration in the Cloud
Docker, Drupal and Persistence
Configuration Of A Pull Network.
Step by step installation of a Domino server on Docker
Hyperledger Fabric and Composer Install
Configuration management suite
Docker Some slides from Martin Meyer Vagrant Box:
CloudOpting - Hackathon
Introduction to Docker
Azure Container Service
Data science laboratory (DSLAB)
Container technology, Microservices, and DevOps
Empowering teams with scalable Shiny applications
Azure DevOps Simplified with Production Data
Presentation transcript:

Johan Janssen, Info Support

Continuous delivery Docker Jenkins Questions

Automate everything Software quality Continuous improvement Regular deployments Anyone can deploy

Version control Compile Quality checks Testing Deployments DevOpsEnd users Etcetera Setup environment

Automate environment provisioning Automate application deployment

To enable continuous delivery Quickly provision environments Run the same software local and in the cloud Easy to move software Better performance Higher availability Cheaper

Disk space efficiency Memory efficiency Speed Compatibility (run anywhere) Isolation Versioning Internet of Things (Raspberry Pi etc.)

Simple general commands No Domain Specific Language (DSL) Configuration with operating system commands

Since March commits in 15 months More than contributors Downloaded million times More than Dockerized apps >6500 Docker related projects on GitHub More than 90 user groups DockerCon (Europe) Support from Google, VMWare, RackSpace, Red Hat, IBM, Microsoft etcetera

Docker on Ubuntu apt-get install docker.io docker.io run -i -t ubuntu:saucy /bin/bash

Main directory BuildAndRunScript.sh GeneralBase Dockerfile Sonar Dockerfile

FROM ubuntu:saucy RUN apt-get -y install software-properties- common RUN add-apt-repository ppa:webupd8team/java RUN apt-get update && apt-get -y upgrade RUN echo "oracle-java7-installer shared/accepted-oracle-license-v1-1 boolean true" | debconf-set-selections RUN apt-get -y install oracle-java7-installer ENV JAVA_HOME /usr/lib/jvm/java-7-oracle

FROM GeneralBase RUN apt-get install -y wget unzip RUN wget zip RUN unzip sonarqube-4.2.zip -d /opt RUN rm sonarqube-4.2.zip EXPOSE 9000 EXPOSE 9092 CMD ["/opt/sonarqube-4.2/bin/linux-x86-64/sonar.sh", "console", "/bin/bash"]

Create the Dockerfiles Build the containers: cd GeneralBase docker.io build -t GeneralBase. cd.. cd Sonar docker.io build -t Sonar.

Start the container docker.io run -p 9000:9000 –p 9092:9092 -d Sonar

# docker.io ps –a CONTAINER ID: ecbecf77461b CREATED: 32 minutes ago STATUS: Up 32 minutes PORTS: :9000->9000/tcp, :9092->9092/tcp

Start / stop / restart docker [start/stop/restart] containerid Follow SystemOut and SystemErr docker logs -f containerid

Show (running) containers docker ps –a Show processes running in container docker top containerid Show changes in the container docker diff containerid

Stop all containers docker.io stop $(docker.io ps -a -q) Remove all containers docker.io rm $(docker.io ps -a -q) Remove all images docker.io rmi $(docker.io images -q)

GeneralBase AppServerBase Environment D Environment T Environment A Environment P Jenkins JenkinsDataContainer SonarGitblitNexus

Dockerfile ENV JENKINS_HOME /var/JenkinsData Docker commands docker.io run -v /var/JenkinsData –name JenkinsDataContainer ubuntu:saucy true docker.io run -p 8080: volumes-from JenkinsDataContainer -d Jenkins

# docker.io images --tree └─ MB Tags: ubuntu:saucy └─253.6 MB └─741.8 MB Tags: GeneralBase:latest └─763.6 MB Tags: AppServerBase:latest … ├─763.6 MB Tags: EnvironmentP:latest └─865.6 MB Tags: Nexus:latest └─808.3 MB Tags: Gitblit:latest └─901.5 MB Tags: Sonar:latest └─805.4 MB Tags: Jenkins:latest

real4m11.729s user0m3.329s sys0m10.054s

Creating the Docker registry docker run -p 5000:5000 registry

Modify container Commit docker.io commit 064f :5000/test-version-0.2 New containerid -> ff7e Push docker.io push :5000/test-version-0.2

Pull docker.io pull :5000/ test-version-0.2 Run docker.io run -i -t ff7e /bin/bash View the changed container

docker images -tree └─153b MB test-version-0.1:latest docker pull :5000/test- version-0.2 ff7e: Download complete 153b: Download complete docker images -tree └─153b MB test-version-0.1:latest └─ff7e MB test-version-0.2:latest

Simple to use Really popular Used in many organizations Regular updates Big community creating plugins etc. Most developers already use it

Continuous delivery Continuous deployment

“Life is really simple, but we insist on making it complicated.” - Confucius

Use a (private) Docker registry Use images from the registry instead of export Keep environmental settings separate Use Jenkins to manage everything Do not add extra functionality like OpenSSH Think about topics such as security, monitoring and logging Separate concerns in separate containers Inherit containers