AD11 Starting With Domino On Docker
AD11 Starting With Domino On Docker
AD11
Martijn de Jong
#engageug
Who Am I
Martijn de Jong
• Senior HCL Consultant @ e-office
• Studied electrical engineering, psychology and music @martdj
• Working with “Lotus” portfolio since 2000
#engageug
My Blog
https://blog.martdj.nl
#engageug
Domino Container History
๏ 2017: Ulrich Krause writes blog article on how to create a
Domino container (9.0.1 FP10)
๏ 2Q 2018: Gabriele Davis presents “Docker for Domino”
@Engage
๏ 4Q 2018: Thomas Hampel creates Domino Docker github
repository @IBM
๏ 4Q 2018: Daniel Nashed joins the project. Starts scripting
the entire installation
The Domino Docker Community Image is born! ☺
๏ 2019/2020: Thomas Hampel & Daniel Nashed present:
#engageug
“Domino on Docker bootcamp”
Agenda
๏History of Containers
๏Container Basics
๏Why Domino containers in production
๏Build-up of the Domino Container
๏Building the image
๏Install and run a new Domino server
๏Convert an existing Domino server
๏Customising / upgrading an Image
#engageug ๏Conclusion
A bit of History
VMWare
Virtual Machines First x86 server
Virtualization
IBM OS/2 VMWare product Xen Hyper-V
IBM CP40
x86 Virtual Virtual 1st OSS VMWare
Mainframe KVM
8086 mode Platform for IA32 hypervisor ESXi
virtualization
1967 1991 1997 1999 2001 2003 2005 2007 2008 2009 2010
Connectix Virtual PC Virtualbox
VT-x / VT-d /
releases Virtual PC For Windows
AMD-V AMD-Vi
For Macintosh
Google creates Podman
Chroot Kubernetes Cgroups v2
Implementation Process Containers DotCloud Cri-o
LXC PAAS product CNCF / OCI
UNIX V7 (renamed to cgroups)
1979 2006 2008 2013 2014 2015 2016 2017 2018 2019
DotCloud Docker CoreOS Kubernetes
->
Containers renamed to donates donates
CNCF
Docker Inc. containerd rkt
Google moves
Kubernetes
Development
#engageug To CNCF
Container Engines
• containerd
• CRI-O
• Docker Engine
• Mirantis Container Runtime (TEFKA Docker
Enterprise)
• Podman
#engageug
Containers vs Virtual Machines
#engageug
Containers *on* virtual machines
#engageug
Why Run Domino as a Container?
๏Standardisation
๏ Start / stop command, locations of folders are the same on
all servers
๏Upgradability
๏ Upgrading a server takes less than a minute
๏Portability
๏ Moving a server becomes a lot easier
#engageug
Demo Start!
#engageug
The Demo Environment
๏ Demo01
๏ VM: 2 vCPU, 4GB Memory
๏ OS: CentOS 8 Stream
๏ Container Engine: Podman
๏ HCL Software packages in /local/software
๏ Demo02
๏ VM: 1 vCPU, 2GB Memory
๏ OS: Rocky Linux release 8.5 (Green Obsidian)
๏ Container Engine: Docker CE
#engageug ๏ Domino 12.0.1 installed
But how to start?
#engageug
Buildup of a Container
#engageug
Which Operating Systems are supported?
HCL Domino System requirements
CentOS
CentOSStream
Streamnot
notsupported?
supported?
#engageug
Which Operating Systems are supported (2)?
HCL Domino 12.0.2 System Requirements
#engageug
The Domino Image
#engageug
Base images for Domino container
๏ Hcl Domino Docker Image - domino:latest
๏ Centos Stream 8 - stream8
๏ Centos Stream 9 - stream9
๏ Rocky Linux - rockylinux
๏ AlmaLinux - almalinux:8
๏ Amazon Linux - amazonlinux
๏ Oracle Linux - oraclelinux:8
๏ VMWare Photon - photon
๏ RedHat Universal Base Image - ubi8
๏ Opensuse - leap
๏ AstraLinux - orel:latest
#engageug
Install and run a new Domino server
๏ Configure the base variables for your Domino server: run:
domino_container cfg
๏ If a first server, run domino_container setup
๏ Start your server: domino_container start
๏ Check what’s happening: domino_container console
#engageug
The Domino Volt Image
Layer 4 • Volt
#engageug
Convert an existing server
๏ Pull the image from your private registry
docker pull <your-registry>:5000/<your-
image-name>
๏ Install the container scripts
/local/github/domino-
startscript/install_domino_container
๏ Edit your container configuration
domino_container cfg
๏ Run the container
domino_container start
๏ Clean the old installation
#engageug
Customising / upgrading an Image
๏Skeleton directory in
/opt/nashcom/startscript/build_image/
๏Possibility to update base image (yum update)
๏Domino_container build
#engageug
The Custom Domino Image
Container • Read / Write filesystem
Layer 4 • Volt
#engageug
Questions
#engageug