SlideShare a Scribd company logo
.docker : how to deploy Digital Experience
in a container drinking a cup of coffee
Matteo Bisi โ€“ Andrea Fontana
About us
2
โ€ข Matteo Bisi โ€“ System Engineer
โ€ข IBM Champion Social Business 2014,15, 16
โ€ข Blogger โ€“ www.msbiro.net, blog.msbiro.net
โ€ข Social: @mbisi78
https://it.linkedin.com/in/matteobisi
matteo.bisi@factor-y.com
About us
3
โ€ข Andrea Fontana โ€“ CTO
โ€ข IBM Champion Social Business 2015,16
โ€ข IBM Champion for WebSphere 2012,13,14
โ€ข IBM Advocate since 2012
โ€ข Blogger โ€“ razioni-k.net2action.com
โ€ข Social: @net2action
https://it.linkedin.com/in/afontana
a.fontana@sowre.com
SAP DEVELOPER
BUSINESS PARTNER
Docker + IBM Social Software
What and why
4
Docker
โ€ข Docker is an open platform for developing, shipping, and running applications.
โ€ข Docker is designed to deliver your applications faster.
โ€ข With Docker you can separate your applications from your infrastructure and treat your
infrastructure like a managed application.
5
Docker and containers in a few slides
Docker is a way to โ€œpackageโ€ your software in an
image:
๏‚ง File system
๏‚ง System security (user/groups) & settings
๏‚ง TCP Network (ports that needs to be
reachable)
๏‚ง Image inheritance is possible (incremental
specialization)
Docker is a way to โ€œship & runโ€ your software to
other systems:
โ€ข Start an โ€œimageโ€ to get a container where your
software runs
โ€ข Manage containers (start/stop/control etc)
โ€ข The container runs regardless of the actual
(underlying) system (VM, bare metal, etc)
6
Docker History
โ€ข Docker was released as open source in March 2013
โ€ข Solomon Hykes started Docker in France as an internal project within dotCloud, a platform-
as-a-service company, with initial contributions by other dotCloud engineers including
Andrea Luzzardi and Francois-Xavier Bourlet.
โ€ข with the release of version 0.9, Docker dropped LXC as the default execution environment
and replaced it with its own libcontainer library written in the Go programming language.
(Googleโ€™s OpenSource Programming Language )
โ€ข In 2015, the project had over 25,600 GitHub, over 6,800 forks, and nearly 1,100
contributors.
โ€ข In May 2016 analysis showed the following organizations as main contributors to Docker:
The Docker team, Cisco, Google, Huawei, IBM, Microsoft, and Red Hat.
7
The underlying technology
Namespaces
โ€ข Pod: pid isolation
โ€ข Net: network interface
โ€ข Ipc: interProcess
Communication
โ€ข Mnt: managing mount point
โ€ข Uts: isolating kernel and
version identifier
Control groups
limits and isolates
the resource usage of a
collection of processes
Union File Systems
operate by creating layers
very lightweight and fast
CONTAINER (libcontainer)
8
Docker Engine
Docker Engine is a client-server application with these major components:
โ€ข A server which is a type of long-running program called a daemon process.
โ€ข A REST API which specifies interfaces that programs can use to talk to the daemon and
instruct it what to do.
โ€ข A command line interface (CLI) client.
9
Docker Machine
โ€ข Docker Machine is a tool that lets you install
Docker Engine on virtual hosts, and manage
the hosts with docker-machine commands.
โ€ข You can use Machine to create Docker
hosts on your local Mac or Windows box, on
your company network, in your data center,
or on cloud providers like AWS or Digital
Ocean.
10
Docker registry
The registry is a server application that lets you distribute Docker images.
https://hub.docker.com/explore/
11
Docker registryโ€ฆ On-premises
Docker hub free-to-use, hosted Registry, plus additional features (organization
accounts, automated builds, and more).
12
Docker registryโ€ฆ On-premises
Running your own Registry is a great solution to integrate with your CI/CD system.
(Continuous Integration/Delivery)
A notification from the Registry would then trigger to notify other systems that a new
image is available.
Itโ€™s also an essential component if you want to quickly deploy a new image over a large
cluster of machines.
Finally, itโ€™s the best way to distribute images inside an isolated network.
13
Availability
โ€ข Linux
โ€ข Windows
โ€ข Mac
โ€ข Aws
โ€ข Azure
โ€ข Bluemix
โ€ข โ€ฆ
Dockerโ€™s architecture
Docker uses a client-server
architecture !
The same image can run
on your laptop, on your server, on your cloud
14
HA is also available
Starting from version 1.12 Docker swarm was integrated into Docker Engine in swarm
mode:
Highlights:
โ€ข Cluster management integrated with Docker Engine
โ€ข Multi-host networking
โ€ข Load balancing
โ€ข Secure by default (TLS stricly enforced for communications)
โ€ข Scaling
15
Why Docker
Create images to support developers (standard deployment)
Keep an archive of images for every software release to perform back-version
debugging/testing (start a clean server in minutes)
Consolidate multiple servers on a single powerful machine but maintain complete
isolation
16
Containers vs Virtual Machine
Virtual machine runs a dedicated
operating system.
Each VM has its own binaries/libraries
and application(s) that it services,
and the VM may be many gigabytes
in size
Each container shares the host OS kernel
and, usually, the binaries and libraries, too.
Shared components are read-only
This makes containers exceptionally โ€œlightโ€ โ€“
containers are only megabytes in size and
take just seconds to start, versus minutes for
a VM
17
Yours Containers can be shipped!18
And IBM ?
19
IBM announces zSystem
for Docker
Download here: http://www.ibm.com/developerworks/linux/linux390/docker.html
IBM and Docker offer integrated container solutions that
can meet the diverse needs of enterprises.
Supporting the creation and deployment of multi-platform,
multi-container workloads across hybrid infrastructures,
IBM and Docker accelerate application delivery and
enable application lifecycle management for Dockerized
containers.
20
IBM announces Docker on
IBM PureApplication System
The good news is that Docker is now supported on IBM
PureApplication v2.1! You can now use Docker containers in the
virtual system patterns that you create and you can reference Docker
images that are stored on Docker Hub or in a private Docker registry
that runs inside PureApplication. Taking advantage of the Docker
containers on PureApplication is as easy as building patterns.
21
IBM Bluemix
โ€ข IBM Bluemix provides built in DevOps services to manage source code and to build, test
and deploy applications to Bluemix.
โ€ข For more complex scenarios IBM provides the Continuous Delivery toolset UrbanCode to
deploy hybrid applications to the cloud and on-premises and to deploy composite
applications with multiple components or microservices.
โ€ข The store application uses one container on Bluemix . Containers running in a Docker
Swarm cluster on-premises.
Does anyone know this guy?
http://heidloff.net/article/11.11.2015100203NHECLU.htm
He is Niklas Heidloff, Developer Advocate for IBM
Bluemix, working on Docker on Bluemix Environment.
22
IBM Bluemix Containers Roadmap
23
How To: Create Docker images with
IBM Social Software
24
Prepare your Container
โ€ข Prepare the Installation script
โ€ข Using Silent installation method
โ€ข Preparing the response file and whatever you need to
complete setup
โ€ข Create your Docker File and deploy it.
25
Docker Image
A docker image is a read-only template for creating containers.
โ€ข Manual: Start from a base image, build your customization and commit the new image.
โ€ข DockerFile: Use a script.
DockerFile anatomy
A โ€œDockerFileโ€ is a text file with docker commands, it
โ€ข Declares the โ€œbase imageโ€ to inherit from
โ€ข Copies files to the image filesystem
โ€ข Executes commands in the image to setup things
โ€ข Declares โ€œVOLUMEโ€ mappings
โ€ข Declares ports to โ€œEXPOSEโ€d.
26
Docker File Anatomy
Identifies which folder you need to share
between container and host
Identifies which image you want to use
Identifies which command you need to
execute inside the containers
FROM ubuntu:latest
VOLUME [/opt/data]
VOLUME [/etc]
VOLUME [/home]
RUN apt-get install -y 
aptitude 
net-tools 
libxtst6 
libxi6 
libcanberra-gtk3 
gtk+
COPY DB2_Svr_10.5.0.3_Linux_x86-64.tar.gz /tmp/db210.5/ Copy your Packages into the containers
27
Prepare IBM Silent Installation
You can use the IBM installation manager from command line, and create your response
file sample!
IBMIM โ€“record /tmp/was9.xml -skipInstall /tmp/IBM/
<?xml version='1.0' encoding='UTF-8'?>
<agent-input>
<variables>
<variable name='sharedLocation' value='/opt/ibm/IMShared'/>
</variables>
<server>
<repository location='/tmp/sw-repo/WAS_ND_9'/>
<repository location='/tmp/sw-repo/SDK_JAVA_V8'/>
</server>
<profile id='IBM WebSphere Application Server V9.0' installLocation='/opt/ibm/WebSphere/AppServer'>
<data key='cic.selector.arch' value='x86_64'/>
<data key='cic.selector.nl' value='en,en'/>
</profile>
<install>
<!-- IBM WebSphere Application Server Network Deployment 9.0.0.0 -->
<offering profile='IBM WebSphere Application Server V9.0' id='com.ibm.websphere.ND.v90' version='9.0.0.20160526_1854' features='core.feature,ejbdeploy,thinclient,embeddablecontainer'/>
<!-- IBM SDK, Java Technology Edition, Versione 8 8.0.3.0 -->
<offering profile='IBM WebSphere Application Server V9.0' id='com.ibm.java.jdk.v8' version='8.0.3000.20160526_1317' features='com.ibm.sdk.8'/>
</install>
28
/opt/ibm/im/eclipse/tools/imcl input /tmp/was9.xml -acceptLicense
Ready to go?
imcl install packageID[_version][,featureID]
-repositories source_repository
-installationDirectory installation_directory
-accessRights mode
We can use our response file
Install from command line
29
Was9 Docker File
# Select the base image to inherit from
FROM ubuntu:latest
# Image description
LABEL Description="WebSphere 9, HTTP 9, Plugin 9" Vendor="MSBIRO.NET" Version="1.0"
# Execute unix command
COPY sw-repo/* /tmp/sw-repo/
RUN apt-get update && apt-get install vim โ€“y
RUN apt-get install -y 
vim 
psmisc
30
RUN /tmp/sw-repo/IM185_LNX64/installc -log log_file -acceptLicense -installationDirectory /opt/ibm/im/
RUN /opt/ibm/im/eclipse/tools/imcl input /tmp/sw-repo/RESPONSE/was9.xml
-acceptLicense
RUN /opt/ibm/im/eclipse/tools/imcl input /tmp/sw-repo/RESPONSE/was9supp.xml โ€“acceptLicense
RUN echo $(head -1 /etc/hosts | cut -f1) dmgr.ondemand.com >> /etc/hosts &&
/opt/ibm/WebSphere/AppServer/bin/manageprofiles.sh -response /tmp/sw-repo/RESPONSE/dmgr
RUN echo $(head -1 /etc/hosts | cut -f1) dmgr.ondemand.com >> /etc/hosts &&
/opt/ibm/WebSphere/AppServer/bin/manageprofiles.sh -response /tmp/sw-repo/RESPONSE/appsrv01
Was9 Docker File
31
Was9 Image
RUN /opt/ibm/WebSphere/AppServer/bin/wasservice.sh -add docker-DMGR -servername dmgr
-profilePath /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/ -stopArgs
โ€˜-username waslocal -password docker'
RUN /opt/ibm/WebSphere/AppServer/bin/wasservice.sh -add docker-NA -servername nodeagent
-profilePath /opt/ibm/WebSphere/AppServer/profiles/AppSrv01/ -stopArgs
'-username waslocal -password docker -stopserversโ€˜
RUN mkdir /var/lock/subsys
# Volume definition
VOLUME ["/opt/ibm/WebSphere/AppServer"]
# port exposed to external world
EXPOSE 80 443 9060 9043RUN
rm /tmp/sw-repo -R
A data volume is a specially-designated directory within one or more containers that bypasses the Union File System.
Data volumes provide several useful features for persistent or shared data:
Volumes are initialized when a container is created. Data volumes can be shared and reused among containers.
Changes to a data volume are made directly.
Changes to a data volume will not be included when you update an image.
Data volumes persist even if the container itself is deleted.
Data volumes are designed to persist data, independent of the life cycle of the container.
The EXPOSE instruction informs Docker that the container listens on the specified network ports at runtime
32
LIVE DEMO
33
Questions?
34
Links
Docker training โ€“ online video course
https://training.docker.com/self-paced-training
IBM Installation Manager resources
http://tinyurl.com/ibm-im-command-line-arg
http://tinyurl.com/ibm-im-record-response
Docker and Domino
http://tinyurl.com/domino-container-docker
35
Thank you!
36
Ad

More Related Content

What's hot (20)

Docker in a big company
Docker in a big companyDocker in a big company
Docker in a big company
Docker, Inc.
ย 
Docker introduction
Docker introductionDocker introduction
Docker introduction
Gourav Varma
ย 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
Heiko Voigt
ย 
DockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTRDockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTR
Docker, Inc.
ย 
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript ToolkitDecember OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
Howard Greenberg
ย 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
Karthik Gaekwad
ย 
Development tools
Development toolsDevelopment tools
Development tools
Parag Patil
ย 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker Captain
Ajeet Singh Raina
ย 
Structured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, AccentureStructured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, Accenture
Docker, Inc.
ย 
Docker introduction (1)
Docker introduction (1)Docker introduction (1)
Docker introduction (1)
Gourav Varma
ย 
WebCenter Portal - Integrate Custom taskflows
WebCenter Portal - Integrate Custom taskflowsWebCenter Portal - Integrate Custom taskflows
WebCenter Portal - Integrate Custom taskflows
enpit GmbH & Co. KG
ย 
.docker : how to deploy Digital Experience in a container drinking a cup of c...
.docker : how to deploy Digital Experience in a container drinking a cup of c....docker : how to deploy Digital Experience in a container drinking a cup of c...
.docker : how to deploy Digital Experience in a container drinking a cup of c...
Andrea Fontana
ย 
"Workstation Up" - Docker Development at Flow by Mike Roth
"Workstation Up" - Docker Development at Flow by Mike Roth"Workstation Up" - Docker Development at Flow by Mike Roth
"Workstation Up" - Docker Development at Flow by Mike Roth
Docker, Inc.
ย 
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best PracticesApril, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
Howard Greenberg
ย 
2014, April 15, Atlanta Java Users Group
2014, April 15, Atlanta Java Users Group2014, April 15, Atlanta Java Users Group
2014, April 15, Atlanta Java Users Group
Todd Fritz
ย 
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixOPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
DA SILVA, MBA
ย 
DSpace UI prototype dsember
DSpace UI prototype dsemberDSpace UI prototype dsember
DSpace UI prototype dsember
Bram Luyten
ย 
Docker Datacenter - CaaS
Docker Datacenter - CaaSDocker Datacenter - CaaS
Docker Datacenter - CaaS
Harish Jayakumar
ย 
Docker for .NET Developers
Docker for .NET DevelopersDocker for .NET Developers
Docker for .NET Developers
Taswar Bhatti
ย 
AppCatalyst and Photon OS
AppCatalyst and Photon OSAppCatalyst and Photon OS
AppCatalyst and Photon OS
Juan Manuel Rey
ย 
Docker in a big company
Docker in a big companyDocker in a big company
Docker in a big company
Docker, Inc.
ย 
Docker introduction
Docker introductionDocker introduction
Docker introduction
Gourav Varma
ย 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
Heiko Voigt
ย 
DockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTRDockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTR
Docker, Inc.
ย 
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript ToolkitDecember OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
Howard Greenberg
ย 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
Karthik Gaekwad
ย 
Development tools
Development toolsDevelopment tools
Development tools
Parag Patil
ย 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker Captain
Ajeet Singh Raina
ย 
Structured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, AccentureStructured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, Accenture
Docker, Inc.
ย 
Docker introduction (1)
Docker introduction (1)Docker introduction (1)
Docker introduction (1)
Gourav Varma
ย 
WebCenter Portal - Integrate Custom taskflows
WebCenter Portal - Integrate Custom taskflowsWebCenter Portal - Integrate Custom taskflows
WebCenter Portal - Integrate Custom taskflows
enpit GmbH & Co. KG
ย 
.docker : how to deploy Digital Experience in a container drinking a cup of c...
.docker : how to deploy Digital Experience in a container drinking a cup of c....docker : how to deploy Digital Experience in a container drinking a cup of c...
.docker : how to deploy Digital Experience in a container drinking a cup of c...
Andrea Fontana
ย 
"Workstation Up" - Docker Development at Flow by Mike Roth
"Workstation Up" - Docker Development at Flow by Mike Roth"Workstation Up" - Docker Development at Flow by Mike Roth
"Workstation Up" - Docker Development at Flow by Mike Roth
Docker, Inc.
ย 
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best PracticesApril, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
Howard Greenberg
ย 
2014, April 15, Atlanta Java Users Group
2014, April 15, Atlanta Java Users Group2014, April 15, Atlanta Java Users Group
2014, April 15, Atlanta Java Users Group
Todd Fritz
ย 
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixOPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
DA SILVA, MBA
ย 
DSpace UI prototype dsember
DSpace UI prototype dsemberDSpace UI prototype dsember
DSpace UI prototype dsember
Bram Luyten
ย 
Docker Datacenter - CaaS
Docker Datacenter - CaaSDocker Datacenter - CaaS
Docker Datacenter - CaaS
Harish Jayakumar
ย 
Docker for .NET Developers
Docker for .NET DevelopersDocker for .NET Developers
Docker for .NET Developers
Taswar Bhatti
ย 
AppCatalyst and Photon OS
AppCatalyst and Photon OSAppCatalyst and Photon OS
AppCatalyst and Photon OS
Juan Manuel Rey
ย 

Viewers also liked (9)

Feed me, Seymore - Supplemental User Data for IC Profiles
Feed me, Seymore - Supplemental User Data for IC ProfilesFeed me, Seymore - Supplemental User Data for IC Profiles
Feed me, Seymore - Supplemental User Data for IC Profiles
ICON UK EVENTS Limited
ย 
Migration:Impossible ... Not so
Migration:Impossible ... Not soMigration:Impossible ... Not so
Migration:Impossible ... Not so
ICON UK EVENTS Limited
ย 
21 ways to make your data work for you
21 ways to make your data work for you21 ways to make your data work for you
21 ways to make your data work for you
ICON UK EVENTS Limited
ย 
Modernising a Notes app with AngularJS
Modernising a Notes app with AngularJSModernising a Notes app with AngularJS
Modernising a Notes app with AngularJS
ICON UK EVENTS Limited
ย 
A Hitchhiker's Guide to troubleshooting IBM Connections
A Hitchhiker's Guide to troubleshooting IBM ConnectionsA Hitchhiker's Guide to troubleshooting IBM Connections
A Hitchhiker's Guide to troubleshooting IBM Connections
ICON UK EVENTS Limited
ย 
Migration from IBM Domino to IBM Verse
Migration from IBM Domino to IBM VerseMigration from IBM Domino to IBM Verse
Migration from IBM Domino to IBM Verse
ICON UK EVENTS Limited
ย 
Migrating data around the office
Migrating data around the officeMigrating data around the office
Migrating data around the office
ICON UK EVENTS Limited
ย 
Help! My Travelers complain about performance, what to do ??
Help! My Travelers complain about performance, what to do ??Help! My Travelers complain about performance, what to do ??
Help! My Travelers complain about performance, what to do ??
ICON UK EVENTS Limited
ย 
From collaboration to engagement
From collaboration to engagementFrom collaboration to engagement
From collaboration to engagement
ICON UK EVENTS Limited
ย 
Feed me, Seymore - Supplemental User Data for IC Profiles
Feed me, Seymore - Supplemental User Data for IC ProfilesFeed me, Seymore - Supplemental User Data for IC Profiles
Feed me, Seymore - Supplemental User Data for IC Profiles
ICON UK EVENTS Limited
ย 
Migration:Impossible ... Not so
Migration:Impossible ... Not soMigration:Impossible ... Not so
Migration:Impossible ... Not so
ICON UK EVENTS Limited
ย 
21 ways to make your data work for you
21 ways to make your data work for you21 ways to make your data work for you
21 ways to make your data work for you
ICON UK EVENTS Limited
ย 
Modernising a Notes app with AngularJS
Modernising a Notes app with AngularJSModernising a Notes app with AngularJS
Modernising a Notes app with AngularJS
ICON UK EVENTS Limited
ย 
A Hitchhiker's Guide to troubleshooting IBM Connections
A Hitchhiker's Guide to troubleshooting IBM ConnectionsA Hitchhiker's Guide to troubleshooting IBM Connections
A Hitchhiker's Guide to troubleshooting IBM Connections
ICON UK EVENTS Limited
ย 
Migration from IBM Domino to IBM Verse
Migration from IBM Domino to IBM VerseMigration from IBM Domino to IBM Verse
Migration from IBM Domino to IBM Verse
ICON UK EVENTS Limited
ย 
Migrating data around the office
Migrating data around the officeMigrating data around the office
Migrating data around the office
ICON UK EVENTS Limited
ย 
Help! My Travelers complain about performance, what to do ??
Help! My Travelers complain about performance, what to do ??Help! My Travelers complain about performance, what to do ??
Help! My Travelers complain about performance, what to do ??
ICON UK EVENTS Limited
ย 
From collaboration to engagement
From collaboration to engagementFrom collaboration to engagement
From collaboration to engagement
ICON UK EVENTS Limited
ย 
Ad

Similar to .docker : How to deploy Digital Experience in a container, drinking a cup of coffee (20)

Docker slides
Docker slidesDocker slides
Docker slides
Jyotsna Raghuraman
ย 
What is Docker?
What is Docker?What is Docker?
What is Docker?
Shubhrank Rastogi
ย 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud Foundry
Animesh Singh
ย 
Docker, how to use it. organize a meeting with IBM products...
Docker, how to use it. organize a meeting with IBM products...Docker, how to use it. organize a meeting with IBM products...
Docker, how to use it. organize a meeting with IBM products...
Andrea Fontana
ย 
Docker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & BluemixDocker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & Bluemix
IBM
ย 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Animesh Singh
ย 
Kubernetes Online Training Hyderabad | Docker Online Training
Kubernetes Online Training Hyderabad | Docker Online TrainingKubernetes Online Training Hyderabad | Docker Online Training
Kubernetes Online Training Hyderabad | Docker Online Training
navyatejavisualpath
ย 
IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017
Michael O'Sullivan
ย 
Docker
DockerDocker
Docker
Vu Duc Du
ย 
Docker 101 - Nov 2016
Docker 101 - Nov 2016Docker 101 - Nov 2016
Docker 101 - Nov 2016
Docker, Inc.
ย 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
javaonfly
ย 
Getting Started With Docker: Simplifying DevOps
Getting Started With Docker: Simplifying DevOpsGetting Started With Docker: Simplifying DevOps
Getting Started With Docker: Simplifying DevOps
demoNguyen
ย 
Docker 101 describing basic docker usage
Docker 101 describing basic docker usageDocker 101 describing basic docker usage
Docker 101 describing basic docker usage
ZiyanMaraikar1
ย 
Docker
DockerDocker
Docker
Neeraj Wadhwa
ย 
C219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better TogetherC219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better Together
Hendrik van Run
ย 
Docker In Brief
Docker In BriefDocker In Brief
Docker In Brief
Ritu Kamthan
ย 
HPC Cloud Burst Using Docker
HPC Cloud Burst Using DockerHPC Cloud Burst Using Docker
HPC Cloud Burst Using Docker
IRJET Journal
ย 
Docker Application to Scientific Computing
Docker Application to Scientific ComputingDocker Application to Scientific Computing
Docker Application to Scientific Computing
Peter Bryzgalov
ย 
ma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptxma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptx
imenhamada17
ย 
Container on azure
Container on azureContainer on azure
Container on azure
Vishwas N
ย 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud Foundry
Animesh Singh
ย 
Docker, how to use it. organize a meeting with IBM products...
Docker, how to use it. organize a meeting with IBM products...Docker, how to use it. organize a meeting with IBM products...
Docker, how to use it. organize a meeting with IBM products...
Andrea Fontana
ย 
Docker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & BluemixDocker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & Bluemix
IBM
ย 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Animesh Singh
ย 
Kubernetes Online Training Hyderabad | Docker Online Training
Kubernetes Online Training Hyderabad | Docker Online TrainingKubernetes Online Training Hyderabad | Docker Online Training
Kubernetes Online Training Hyderabad | Docker Online Training
navyatejavisualpath
ย 
IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017
Michael O'Sullivan
ย 
Docker
DockerDocker
Docker
Vu Duc Du
ย 
Docker 101 - Nov 2016
Docker 101 - Nov 2016Docker 101 - Nov 2016
Docker 101 - Nov 2016
Docker, Inc.
ย 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
javaonfly
ย 
Getting Started With Docker: Simplifying DevOps
Getting Started With Docker: Simplifying DevOpsGetting Started With Docker: Simplifying DevOps
Getting Started With Docker: Simplifying DevOps
demoNguyen
ย 
Docker 101 describing basic docker usage
Docker 101 describing basic docker usageDocker 101 describing basic docker usage
Docker 101 describing basic docker usage
ZiyanMaraikar1
ย 
C219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better TogetherC219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better Together
Hendrik van Run
ย 
Docker In Brief
Docker In BriefDocker In Brief
Docker In Brief
Ritu Kamthan
ย 
HPC Cloud Burst Using Docker
HPC Cloud Burst Using DockerHPC Cloud Burst Using Docker
HPC Cloud Burst Using Docker
IRJET Journal
ย 
Docker Application to Scientific Computing
Docker Application to Scientific ComputingDocker Application to Scientific Computing
Docker Application to Scientific Computing
Peter Bryzgalov
ย 
ma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptxma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptx
imenhamada17
ย 
Container on azure
Container on azureContainer on azure
Container on azure
Vishwas N
ย 
Ad

Recently uploaded (20)

Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
ย 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
ย 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
ย 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
ย 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
ย 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
ย 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
ย 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
ย 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
ย 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
ย 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
ย 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
ย 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
ย 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
ย 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
ย 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
ย 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
ย 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
ย 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
ย 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
ย 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
ย 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
ย 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
ย 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
ย 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
ย 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
ย 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
ย 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
ย 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
ย 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
ย 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
ย 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
ย 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
ย 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
ย 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
ย 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
ย 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
ย 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
ย 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
ย 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
ย 

.docker : How to deploy Digital Experience in a container, drinking a cup of coffee

  • 1. .docker : how to deploy Digital Experience in a container drinking a cup of coffee Matteo Bisi โ€“ Andrea Fontana
  • 2. About us 2 โ€ข Matteo Bisi โ€“ System Engineer โ€ข IBM Champion Social Business 2014,15, 16 โ€ข Blogger โ€“ www.msbiro.net, blog.msbiro.net โ€ข Social: @mbisi78 https://it.linkedin.com/in/matteobisi [email protected]
  • 3. About us 3 โ€ข Andrea Fontana โ€“ CTO โ€ข IBM Champion Social Business 2015,16 โ€ข IBM Champion for WebSphere 2012,13,14 โ€ข IBM Advocate since 2012 โ€ข Blogger โ€“ razioni-k.net2action.com โ€ข Social: @net2action https://it.linkedin.com/in/afontana [email protected] SAP DEVELOPER BUSINESS PARTNER
  • 4. Docker + IBM Social Software What and why 4
  • 5. Docker โ€ข Docker is an open platform for developing, shipping, and running applications. โ€ข Docker is designed to deliver your applications faster. โ€ข With Docker you can separate your applications from your infrastructure and treat your infrastructure like a managed application. 5
  • 6. Docker and containers in a few slides Docker is a way to โ€œpackageโ€ your software in an image: ๏‚ง File system ๏‚ง System security (user/groups) & settings ๏‚ง TCP Network (ports that needs to be reachable) ๏‚ง Image inheritance is possible (incremental specialization) Docker is a way to โ€œship & runโ€ your software to other systems: โ€ข Start an โ€œimageโ€ to get a container where your software runs โ€ข Manage containers (start/stop/control etc) โ€ข The container runs regardless of the actual (underlying) system (VM, bare metal, etc) 6
  • 7. Docker History โ€ข Docker was released as open source in March 2013 โ€ข Solomon Hykes started Docker in France as an internal project within dotCloud, a platform- as-a-service company, with initial contributions by other dotCloud engineers including Andrea Luzzardi and Francois-Xavier Bourlet. โ€ข with the release of version 0.9, Docker dropped LXC as the default execution environment and replaced it with its own libcontainer library written in the Go programming language. (Googleโ€™s OpenSource Programming Language ) โ€ข In 2015, the project had over 25,600 GitHub, over 6,800 forks, and nearly 1,100 contributors. โ€ข In May 2016 analysis showed the following organizations as main contributors to Docker: The Docker team, Cisco, Google, Huawei, IBM, Microsoft, and Red Hat. 7
  • 8. The underlying technology Namespaces โ€ข Pod: pid isolation โ€ข Net: network interface โ€ข Ipc: interProcess Communication โ€ข Mnt: managing mount point โ€ข Uts: isolating kernel and version identifier Control groups limits and isolates the resource usage of a collection of processes Union File Systems operate by creating layers very lightweight and fast CONTAINER (libcontainer) 8
  • 9. Docker Engine Docker Engine is a client-server application with these major components: โ€ข A server which is a type of long-running program called a daemon process. โ€ข A REST API which specifies interfaces that programs can use to talk to the daemon and instruct it what to do. โ€ข A command line interface (CLI) client. 9
  • 10. Docker Machine โ€ข Docker Machine is a tool that lets you install Docker Engine on virtual hosts, and manage the hosts with docker-machine commands. โ€ข You can use Machine to create Docker hosts on your local Mac or Windows box, on your company network, in your data center, or on cloud providers like AWS or Digital Ocean. 10
  • 11. Docker registry The registry is a server application that lets you distribute Docker images. https://hub.docker.com/explore/ 11
  • 12. Docker registryโ€ฆ On-premises Docker hub free-to-use, hosted Registry, plus additional features (organization accounts, automated builds, and more). 12
  • 13. Docker registryโ€ฆ On-premises Running your own Registry is a great solution to integrate with your CI/CD system. (Continuous Integration/Delivery) A notification from the Registry would then trigger to notify other systems that a new image is available. Itโ€™s also an essential component if you want to quickly deploy a new image over a large cluster of machines. Finally, itโ€™s the best way to distribute images inside an isolated network. 13
  • 14. Availability โ€ข Linux โ€ข Windows โ€ข Mac โ€ข Aws โ€ข Azure โ€ข Bluemix โ€ข โ€ฆ Dockerโ€™s architecture Docker uses a client-server architecture ! The same image can run on your laptop, on your server, on your cloud 14
  • 15. HA is also available Starting from version 1.12 Docker swarm was integrated into Docker Engine in swarm mode: Highlights: โ€ข Cluster management integrated with Docker Engine โ€ข Multi-host networking โ€ข Load balancing โ€ข Secure by default (TLS stricly enforced for communications) โ€ข Scaling 15
  • 16. Why Docker Create images to support developers (standard deployment) Keep an archive of images for every software release to perform back-version debugging/testing (start a clean server in minutes) Consolidate multiple servers on a single powerful machine but maintain complete isolation 16
  • 17. Containers vs Virtual Machine Virtual machine runs a dedicated operating system. Each VM has its own binaries/libraries and application(s) that it services, and the VM may be many gigabytes in size Each container shares the host OS kernel and, usually, the binaries and libraries, too. Shared components are read-only This makes containers exceptionally โ€œlightโ€ โ€“ containers are only megabytes in size and take just seconds to start, versus minutes for a VM 17
  • 18. Yours Containers can be shipped!18
  • 20. IBM announces zSystem for Docker Download here: http://www.ibm.com/developerworks/linux/linux390/docker.html IBM and Docker offer integrated container solutions that can meet the diverse needs of enterprises. Supporting the creation and deployment of multi-platform, multi-container workloads across hybrid infrastructures, IBM and Docker accelerate application delivery and enable application lifecycle management for Dockerized containers. 20
  • 21. IBM announces Docker on IBM PureApplication System The good news is that Docker is now supported on IBM PureApplication v2.1! You can now use Docker containers in the virtual system patterns that you create and you can reference Docker images that are stored on Docker Hub or in a private Docker registry that runs inside PureApplication. Taking advantage of the Docker containers on PureApplication is as easy as building patterns. 21
  • 22. IBM Bluemix โ€ข IBM Bluemix provides built in DevOps services to manage source code and to build, test and deploy applications to Bluemix. โ€ข For more complex scenarios IBM provides the Continuous Delivery toolset UrbanCode to deploy hybrid applications to the cloud and on-premises and to deploy composite applications with multiple components or microservices. โ€ข The store application uses one container on Bluemix . Containers running in a Docker Swarm cluster on-premises. Does anyone know this guy? http://heidloff.net/article/11.11.2015100203NHECLU.htm He is Niklas Heidloff, Developer Advocate for IBM Bluemix, working on Docker on Bluemix Environment. 22
  • 24. How To: Create Docker images with IBM Social Software 24
  • 25. Prepare your Container โ€ข Prepare the Installation script โ€ข Using Silent installation method โ€ข Preparing the response file and whatever you need to complete setup โ€ข Create your Docker File and deploy it. 25
  • 26. Docker Image A docker image is a read-only template for creating containers. โ€ข Manual: Start from a base image, build your customization and commit the new image. โ€ข DockerFile: Use a script. DockerFile anatomy A โ€œDockerFileโ€ is a text file with docker commands, it โ€ข Declares the โ€œbase imageโ€ to inherit from โ€ข Copies files to the image filesystem โ€ข Executes commands in the image to setup things โ€ข Declares โ€œVOLUMEโ€ mappings โ€ข Declares ports to โ€œEXPOSEโ€d. 26
  • 27. Docker File Anatomy Identifies which folder you need to share between container and host Identifies which image you want to use Identifies which command you need to execute inside the containers FROM ubuntu:latest VOLUME [/opt/data] VOLUME [/etc] VOLUME [/home] RUN apt-get install -y aptitude net-tools libxtst6 libxi6 libcanberra-gtk3 gtk+ COPY DB2_Svr_10.5.0.3_Linux_x86-64.tar.gz /tmp/db210.5/ Copy your Packages into the containers 27
  • 28. Prepare IBM Silent Installation You can use the IBM installation manager from command line, and create your response file sample! IBMIM โ€“record /tmp/was9.xml -skipInstall /tmp/IBM/ <?xml version='1.0' encoding='UTF-8'?> <agent-input> <variables> <variable name='sharedLocation' value='/opt/ibm/IMShared'/> </variables> <server> <repository location='/tmp/sw-repo/WAS_ND_9'/> <repository location='/tmp/sw-repo/SDK_JAVA_V8'/> </server> <profile id='IBM WebSphere Application Server V9.0' installLocation='/opt/ibm/WebSphere/AppServer'> <data key='cic.selector.arch' value='x86_64'/> <data key='cic.selector.nl' value='en,en'/> </profile> <install> <!-- IBM WebSphere Application Server Network Deployment 9.0.0.0 --> <offering profile='IBM WebSphere Application Server V9.0' id='com.ibm.websphere.ND.v90' version='9.0.0.20160526_1854' features='core.feature,ejbdeploy,thinclient,embeddablecontainer'/> <!-- IBM SDK, Java Technology Edition, Versione 8 8.0.3.0 --> <offering profile='IBM WebSphere Application Server V9.0' id='com.ibm.java.jdk.v8' version='8.0.3000.20160526_1317' features='com.ibm.sdk.8'/> </install> 28
  • 29. /opt/ibm/im/eclipse/tools/imcl input /tmp/was9.xml -acceptLicense Ready to go? imcl install packageID[_version][,featureID] -repositories source_repository -installationDirectory installation_directory -accessRights mode We can use our response file Install from command line 29
  • 30. Was9 Docker File # Select the base image to inherit from FROM ubuntu:latest # Image description LABEL Description="WebSphere 9, HTTP 9, Plugin 9" Vendor="MSBIRO.NET" Version="1.0" # Execute unix command COPY sw-repo/* /tmp/sw-repo/ RUN apt-get update && apt-get install vim โ€“y RUN apt-get install -y vim psmisc 30
  • 31. RUN /tmp/sw-repo/IM185_LNX64/installc -log log_file -acceptLicense -installationDirectory /opt/ibm/im/ RUN /opt/ibm/im/eclipse/tools/imcl input /tmp/sw-repo/RESPONSE/was9.xml -acceptLicense RUN /opt/ibm/im/eclipse/tools/imcl input /tmp/sw-repo/RESPONSE/was9supp.xml โ€“acceptLicense RUN echo $(head -1 /etc/hosts | cut -f1) dmgr.ondemand.com >> /etc/hosts && /opt/ibm/WebSphere/AppServer/bin/manageprofiles.sh -response /tmp/sw-repo/RESPONSE/dmgr RUN echo $(head -1 /etc/hosts | cut -f1) dmgr.ondemand.com >> /etc/hosts && /opt/ibm/WebSphere/AppServer/bin/manageprofiles.sh -response /tmp/sw-repo/RESPONSE/appsrv01 Was9 Docker File 31
  • 32. Was9 Image RUN /opt/ibm/WebSphere/AppServer/bin/wasservice.sh -add docker-DMGR -servername dmgr -profilePath /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/ -stopArgs โ€˜-username waslocal -password docker' RUN /opt/ibm/WebSphere/AppServer/bin/wasservice.sh -add docker-NA -servername nodeagent -profilePath /opt/ibm/WebSphere/AppServer/profiles/AppSrv01/ -stopArgs '-username waslocal -password docker -stopserversโ€˜ RUN mkdir /var/lock/subsys # Volume definition VOLUME ["/opt/ibm/WebSphere/AppServer"] # port exposed to external world EXPOSE 80 443 9060 9043RUN rm /tmp/sw-repo -R A data volume is a specially-designated directory within one or more containers that bypasses the Union File System. Data volumes provide several useful features for persistent or shared data: Volumes are initialized when a container is created. Data volumes can be shared and reused among containers. Changes to a data volume are made directly. Changes to a data volume will not be included when you update an image. Data volumes persist even if the container itself is deleted. Data volumes are designed to persist data, independent of the life cycle of the container. The EXPOSE instruction informs Docker that the container listens on the specified network ports at runtime 32
  • 35. Links Docker training โ€“ online video course https://training.docker.com/self-paced-training IBM Installation Manager resources http://tinyurl.com/ibm-im-command-line-arg http://tinyurl.com/ibm-im-record-response Docker and Domino http://tinyurl.com/domino-container-docker 35