Docker部署Websphere:如何导出JDBC等配置用于容器创建?
导出WebSphere配置用于Docker容器复用
方法1:使用wsadmin脚本导出完整配置
WebSphere自带的wsadmin工具可直接导出配置包,步骤如下:
- 进入运行中的WebSphere容器:
docker exec -it <容器ID/名称> /bin/bash - 切换到WebSphere的bin目录(默认路径为
/opt/IBM/WebSphere/AppServer/bin):cd /opt/IBM/WebSphere/AppServer/bin - 执行导出命令,将配置打包为zip文件:
./wsadmin.sh -lang jython -c "AdminTask.exportConfig('/tmp/ws-config.zip')" - 将容器内的配置包复制到宿主机:
docker cp <容器ID/名称>:/tmp/ws-config.zip /宿主机目标路径/
后续创建新容器时,可将该zip包挂载到容器内,执行以下命令导入配置:./wsadmin.sh -lang jython -c "AdminTask.importConfig('/挂载路径/ws-config.zip')"
方法2:基于已配置容器构建新镜像
直接将配置固化到镜像中,后续可直接复用:
- 提交已完成JDBC配置的容器为新镜像:
docker commit <容器ID/名称> websphere-jdbc-configured:v1 - 使用新镜像创建容器,配置会自动保留:
docker run -d --name new-ws-container websphere-jdbc-configured:v1
方法3:手动备份关键配置文件
WebSphere的JDBC配置主要存储在以下路径(容器内):
/opt/IBM/WebSphere/AppServer/profiles/<你的profile>/config/cells/<你的cell>/nodes/<你的node>/servers/<你的server>/resources.xml- 全局JDBC提供者配置路径:
/opt/IBM/WebSphere/AppServer/profiles/<你的profile>/config/cells/<你的cell>/resources.xml
操作步骤:
- 将配置目录复制到宿主机备份:
docker cp <容器ID/名称>:/opt/IBM/WebSphere/AppServer/profiles/<你的profile>/config/cells/ /宿主机备份路径/ - 创建新容器时,挂载备份的配置目录覆盖默认路径:
docker run -v /宿主机备份路径/cells:/opt/IBM/WebSphere/AppServer/profiles/<你的profile>/config/cells -d websphere-base-image
注意事项
- 导出/备份前建议停止WebSphere服务,避免配置文件处于读写状态导致不一致
- 使用
docker commit时,清理容器内临时文件可减少镜像体积 - 导入配置前,新容器的WebSphere版本、profile结构需与原容器一致,避免兼容性问题
内容的提问来源于stack exchange,提问作者Patrick Lange
相关产品推荐
相关产品推荐

