0% found this document useful (0 votes)
72 views

AD11 Starting With Domino On Docker

The document discusses running IBM Domino as a container. It provides a brief history of Domino containerization efforts dating back to 2017. It then covers the benefits of running Domino in containers, such as standardization, easy upgradability and portability. The rest of the document demonstrates how to build a Domino container image using scripts from the Domino Container GitHub repository. It explains the multi-layered structure of the Domino image and provides commands for installing, configuring and managing a new Domino server container.

Uploaded by

reyand
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
72 views

AD11 Starting With Domino On Docker

The document discusses running IBM Domino as a container. It provides a brief history of Domino containerization efforts dating back to 2017. It then covers the benefits of running Domino in containers, such as standardization, easy upgradability and portability. The rest of the document demonstrates how to build a Domino container image using scripts from the Domino Container GitHub repository. It explains the multi-layered structure of the Domino image and provides commands for installing, configuring and managing a new Domino server container.

Uploaded by

reyand
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

Engage 2022

AD11

Why it's a good time to use Domino as a


Container in production and how to start

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?

CentOS Stream *is* supported

#engageug
Which Operating Systems are supported (2)?
HCL Domino 12.0.2 System Requirements

That’s Red Hat 9!

SELinux officially supported!


#engageug
Let’s look at those commands
๏ git clone https://github.com/HCL-TECH-SOFTWARE/domino-
container.git
Download the latest version of the scripts to your build machine
๏ ./build.sh cfg
Edit the build configuration. Enter where the software can be found
๏ ./build.sh domino -capi –verse
Builds the latest version of Domino (currently Domino 12.0.1 FP1) with the Verse
(2.2.0a) libraries and the C-API libraries with CentOS 8 Stream as base image
๏ To build an older version on top of OpenSuse Leap and tag it as latest11:
./build.sh domino 11.0.1 FP4 HF356 -from=leap latest11
๏ To add the latest version of Traveler to the image:
./build.sh traveler

#engageug
The Domino Image

Container • Read / Write filesystem

Layer 3 • Traveler 12.0.1

Layer 2 • Domino 12.0.1 & FP1 & Verse & C-API

Layer 1 • CentOS updates + extra packages

Base Image • CentOS 8 stream

#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

Container • Read / Write filesystem

Layer 4 • Volt

Layer 3 • Traveler 12.0.1

Layer 2 • Domino 12.0.1 & FP1 & Verse & C-API

Layer 1 • CentOS updates + extra packages

Base Image • CentOS 8 stream

#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 5 • Customizations / CentOS updates

Layer 4 • Volt

Layer 3 • Traveler 12.0.1

Layer 2 • Domino 12.0.1 & FP1 & Verse & C-API

Layer 1 • CentOS updates + extra packages

Base Image • CentOS 8 stream


#engageug
Conclusion

๏Using Domino in a container has a lot of benefits:


๏ Standard installations
๏ Fast installs
๏ Fast updates
๏ Scriptable / scheduled updates
๏ Easy to convert existing servers
๏ No real knowledge of containers needed due to Domino
container scripts

#engageug
Questions

#engageug

You might also like