Reinicio de servidores de JVM dentro de contenedores
En función de cómo se estén ejecutando sus contenedores (localmente o a través de una herramienta de orquestación gestionada), es necesario comprender cómo reiniciar aplicaciones, como WebSphere Application Server o el servidor Liberty.
[root@txn /]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 15068 3060 ? Ss 17:14 0:00 /bin/bash /SETUP/bin/entrypoint.sh
root 173 0.0 0.0 15200 3328 ? Ss 17:14 0:00 bash
root 214 95.7 6.9 3445684 1146952 ? Sl 17:15 2:15 /opt/WebSphere/AppServer/java/8.0/bin/java -Dosgi.install.area=/opt/WebSphere/AppServer -Dosgi.configuration.area=/opt/We
root 290 0.0 0.0 7756 740 ? S 17:15 0:00 tail -F /opt/WebSphere/AppServer/profiles/default/logs/server1/trace.log --pid 214 -n +0
root 430 0.0 0.0 50876 3684 ? R+ 17:18 0:00 ps aux
El pid=1
ejecuta /SETUP/bin/entrypoint.sh puesto que WebSphere Application Server no puede ser un proceso en primer plano. En algunos escenarios, después de configurar los valores o aplicar cualquier cambio, puede que sea necesario reiniciar WebSphere Application Server, mismo que se ejecuta dentro del Transaction server Docker container, o los servidores Liberty que se ejecutan dentro de los contenedores Docker de búsqueda, tienda y personalización. Para reiniciar WebSphere Application Server o el servidor Liberty, no puede utilizar scripts stop/start tradicionales. Es necesario reiniciar todo el contenedor. Por ejemplo,docker restart <container_name>
O, si utiliza Docker Compose,docker-compose restart <service>
Es un enfoque válido para el entorno de Docker local donde las imágenes Docker no se eliminan el sistema. Puede reiniciar los contenedores y no perder datos ni configuraciones.Sin embargo, al implementar herramientas de orquestación Docker avanzadas (como Marathon o Kubernetes), el contenedor y sus configuraciones se pierden cuando se recopila un contenedor de basura (junto con sus configuraciones). Las herramientas de orquestación implementan nuevos contenedores desde la imagen base. Por lo tanto, para asegurarse de que no pierde las configuraciones o personalizaciones, se recomienda crear nuevas imágenes Docker base para incluir los cambios. Para obtener más información, consulte Creación de una imagen de Docker personalizada a partir de un paquete desplegable.