Types of Domino containers

Use the docker run command to create a container that runs Domino. You can create the following types of Domino containers, based on the docker run arguments that you specify.

  • A container for Domino server setup. When you set up a new Domino server, you create a temporary container that launches the remote Domino server setup program. This type of container is created by using the --setup argument with docker run. Typically you also use the --rm option to delete the container after setup completes and the container stops running.
  • A container that runs Domino. Once you've set up a Domino server, you create a new longer-term container to run the server. The volume that stores the data directory persists but the the container itself can be deleted and recreated. For example, you might delete and recreate a container to deploy different characteristics such as ports or to do a server upgrade. You can also create an additional container to perform maintenance tasks when the Domino server is down, such as running Updall or Fixup. Note that only one Domino container can run at a time.
  • A container to upgrade Domino with new design templates. When a new Domino version becomes available, you typically need to replace database templates with new ones and upgrade database design. In this case, you delete the current Domino container and create a new temporary "upgrade" container using the --update and --run-design arguments with docker run. This container upgrades the Domino version, copies the latest templates to the data directory volume and optionally automatically executes the design task to update database design. Typically you delete this upgrade container after it completes and then create a new container for the new Domino server version.

  • A container to run Domino processes with the server down. Typically when you create a container for Domino, a startup script runs that launches the Domino server. You can instead create a container that does not start the server and instead provides access through a bash shell. In this case, you use the arguments --entrypoint /bin/bash and --user notes in the docker run command when you create the container.