You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用stopServer.sh停止服务器后WebSphere容器终止,求重启及配置保留方案

问题1:stopServer.sh导致Docker容器停止后的重启操作

当你用stopServer.sh停止WebSphere时,容器随之停止是因为Docker容器的生命周期和主进程绑定——WebSphere的前台进程是容器的主进程,stopServer.sh会终止这个主进程,容器自然就停了。

推荐的重启操作:

  • 直接启动停止的容器:执行docker start <你的容器ID>,容器启动后会自动重新启动WebSphere服务(前提是容器启动脚本配置了启动WebSphere的逻辑)。
  • 如果你想避免stopServer.sh导致容器停止,可以修改容器的启动命令,让WebSphere以守护进程方式运行,同时让容器的主进程是一个持续运行的监控进程(比如用tail -f /dev/null作为主进程,再在启动脚本里后台启动WebSphere),不过这种方式需要调整容器的启动逻辑,适合需要在容器内手动启停WebSphere的场景。
问题2:docker restart丢失新配置的解决方法

首先纠正一个误区:docker restart的参数应该是容器ID/名称,而不是镜像ID。如果你的配置在docker restart后丢失,大概率是因为配置只保存在容器的临时可写层里,或者你误操作重新创建了容器(而非重启)。

解决配置持久化的核心是让配置脱离容器的可写层,具体方案:

  • 挂载宿主机卷:找到WebSphere的配置目录(通常是/opt/IBM/WebSphere/AppServer/profiles/<你的配置文件>/config),启动容器时用-v参数将宿主机目录挂载到这个路径:
    docker run -d -v /宿主机的配置目录:/opt/IBM/WebSphere/AppServer/profiles/Default/config --name websphere-container websphere-image
    
    之后所有配置修改都会同步到宿主机目录,重启容器或重新创建容器时,配置都会保留。
  • 构建自定义镜像:如果你的配置是固定的,在修改完容器内的配置后,将容器提交为新镜像:
    docker commit websphere-container custom-websphere:v1
    
    之后用这个新镜像启动容器,配置就会被固化在镜像里,不会丢失。
  • 避免使用--rm参数启动容器:如果启动容器时加了--rm,容器停止后会被自动删除,所有临时修改都会丢失,所以不要用这个参数来运行需要保留配置的容器。

内容的提问来源于stack exchange,提问作者Ali Khalil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 18:21:09