Domino Docker and Debugging
Given that Domino once was build to run on 486 capacity of servers, Docker and Domino are posed to be a match made in heaven (eventually). Jesse shared shared his Weekend Domino-Apps-in-Docker Experimentation, Paul shared his learning points and Daniel provided the invaluable Domino on Docker build scripts. So it's time to contribute my share. The topic is slightly more exotic
Debug a Java application running on Domino in a Docker container
Before we can get cooking, we need to know what ingredients we need:
- The Domino on Docker build scripts including the required Domino Linux installer
- Some general understanding how Daniel's Domino Startup Script works
- Docker desktop installed on our machine (I use macOS, but I know someone, who can share his Windows experience)
- Basic understanding of Docker
- A Java project that shall be debugged. I use Apache Maven, as discussed before, but Gradle will do just fine
- Understanding how to debug Java
Our objective: Create a Domino image that loads the Java application from its host file system, so we do not need to rebuild the container on Java changed. An instance of this image shall allow to connect a debugger to that Java application
Foundation: the Domino image
First we have to build a Domino Docker image, configure a server using a docker volume. This has been mapped out in the domino-docker project and its slighly hidden documentation. Just a quick recap:
- Build the image using
./build domino
- Create a volume using
docker volume create keep_data
- Run the instance once to setup the domino
docker run -it -e "ServerName=Server1" \
-e "OrganizationName=MyOrg" \
-e "AdminFirstName=Doctor" \
-e "AdminLastName=Notes" \
-e "AdminPassword=passw0rd" \
-h myserver.domino.local \
-p 80:80 \
-p 1352:1352 \
-v keep_data:/local/notesdata \
--stop-timeout=60 \
--name server1 \
hclcom/domino:11.0.1
We shut down the instance once you have confirmed it works. We don't need it thereafter, we only need the volume and image. Of course there's no harm keeping it around
Read more
Posted by Stephan H Wissel on 30 June 2020 | Comments (1) | categories: Container Docker Domino HCL Notes K8S Maven