如何为WSO2 MI Dashboard v4.0.1.17创建Docker镜像?
解决方案:自定义构建WSO2 MI Dashboard v4.0.1.17 Docker镜像
1. 准备前置资源
- 本地已安装Docker
- 你手上已验证可用的WSO2 MI Dashboard v4.0.1.17压缩包(
wso2mi-dashboard-4.0.1.17.zip)或已解压好的完整目录 - 空白的本地目录用于编写Dockerfile
2. 编写自定义Dockerfile
无需依赖官方旧版本镜像,直接基于兼容的OpenJDK基础镜像构建,示例Dockerfile如下:
# WSO2 MI Dashboard 4.x版本推荐使用OpenJDK 11 FROM openjdk:11-jre-slim # 定义环境变量,指定Dashboard安装目录 ENV WSO2_HOME=/home/wso2carbon/wso2mi-dashboard-4.0.1.17 ENV PATH=$WSO2_HOME/bin:$PATH # 创建非root运行用户,降低权限风险 RUN useradd -m wso2carbon && mkdir -p $WSO2_HOME # 方式1:使用本地压缩包构建 COPY wso2mi-dashboard-4.0.1.17.zip /tmp/ RUN unzip /tmp/wso2mi-dashboard-4.0.1.17.zip -d /home/wso2carbon/ && \ rm /tmp/wso2mi-dashboard-4.0.1.17.zip && \ chown -R wso2carbon:wso2carbon $WSO2_HOME # 方式2:如果已提前修改好配置(比如替换H2数据库),直接复制解压后的目录 # COPY wso2mi-dashboard-4.0.1.17 $WSO2_HOME # RUN chown -R wso2carbon:wso2carbon $WSO2_HOME # 切换到非root用户 USER wso2carbon # 暴露Dashboard默认端口(HTTPS:9743,HTTP:9643,按需调整) EXPOSE 9743 9643 # 启动Dashboard服务 CMD ["dashboard.sh"]
将你的压缩包(或已修改配置的解压目录)放到Dockerfile所在的本地目录中,对应选择上述两种构建方式之一。
3. 构建Docker镜像
在Dockerfile所在目录执行命令:
docker build -t wso2mi-dashboard:4.0.1.17 .
4. 验证镜像可用性
运行容器测试服务是否正常启动:
docker run -d -p 9743:9743 wso2mi-dashboard:4.0.1.17
访问https://localhost:9743,确认能正常进入Dashboard界面(首次访问需信任自签名证书)
5. 适配数据库替换配置
如果需要替换默认H2数据库:
- 在本地解压的Dashboard目录中修改
conf/dashboard/deployment.yaml,配置目标数据库(如MySQL、PostgreSQL)的连接参数、驱动依赖 - 将修改完成的整个Dashboard目录复制到Dockerfile所在目录
- 使用Dockerfile中的「方式2」进行构建,确保自定义配置被完整带入镜像
内容的提问来源于stack exchange,提问作者ahinsa
相关产品推荐
相关产品推荐

