Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Not A Bug
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: Docker-Nexus
-
Labels:None
Description
The official docker image
https://hub.docker.com/r/sonatype/nexus3/
runs a single process of the nexus service.
In order to perform a restore from backup, the service needs to be stopped. https://help.sonatype.com/repomanager3/backup-and-restore/restore-exported-databases
Stopping the main process in a docker image stops the running container, making it impossible to perform a restore.
This becomes even more problematic in a Kubernetes environment. If the single nexus process terminates inside a K8s container, the pod is restarted, and connection to any PVC starts again, eliminating any chance to restore while the nexus service is not running.
Suggestion: the docker image created by `travel audience` runs the nexus process on a different thread, allowing the service to be stopped/started without impacting the container state: https://github.com/travelaudience/docker-nexus
The ideal process is described in this blog post
https://www.sonatype.com/travel-audience-devops-pipeline-solution
ending on a quote:
While single-process-per-container architecture is a powerful and consistent solution, sometimes it makes sense to abandon puristic approaches in the name of project-specific goals.
> https://runnable.com/docker/rails/run-multiple-processes-in-a-container