本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
本镜像是一个基于Debian的Docker容器,通过Wine兼容层运行WiX MSI工具集(Windows Installer XML Toolset)。其核心价值在于突破WiX工具集原生依赖Windows环境的限制,使Linux、macOS等非Windows系统也能构建Windows Installer (MSI)安装包,实现跨平台MSI构建流程的统一。
3.11、4.0),确保构建环境一致性。从Docker仓库拉取镜像(假设镜像名称为wix-msi-toolset,具体名称以实际仓库为准):
docker pull wix-msi-toolset:latest
通过挂载本地WiX项目目录到容器,执行WiX工具链命令。假设本地WiX项目文件(如product.wxs)位于当前目录:
# 步骤1:使用candle编译.wxs文件为.wixobj目标文件 docker run --rm -v $(pwd):/workspace -w /workspace wix-msi-toolset \ candle product.wxs -o build/ # 步骤2:使用light链接.wixobj文件生成MSI安装包 docker run --rm -v $(pwd):/workspace -w /workspace wix-msi-toolset \ light build/product.wixobj -o dist/product.msi
参数说明:
--rm:容器退出后自动删除,避免残留容器实例。-v $(pwd):/workspace:将本地当前目录挂载到容器内/workspace目录,实现项目文件共享。-w /workspace:设置容器工作目录为/workspace,确保命令在挂载目录中执行。| 环境变量 | 描述 | 默认值 |
|---|---|---|
WIX_VERSION | 指定WiX工具集版本(如3.11、4.0),需镜像支持对应版本 | latest |
WINEDEBUG | 控制Wine调试输出级别(-all禁用调试输出,warn+all显示警告) | -all |
WORKDIR | 容器内默认工作目录 | /workspace |
USER_ID | 容器内运行用户ID(解决文件权限问题) | 1000 |
GROUP_ID | 容器内运行用户组ID | 1000 |
若WiX项目包含多文件结构(如引用库、资源文件),需确保所有依赖文件挂载至容器。示例项目结构:
./my-wix-project/ ├── src/ │ ├── product.wxs # 主配置文件 │ └── components.wxs # 组件定义文件 ├── resources/ # 安装包资源(图标、文档等) └── build/ # 输出目录
构建命令:
docker run --rm \ -v $(pwd)/my-wix-project:/workspace \ -w /workspace \ -e WIX_VERSION=4.0 \ wix-msi-toolset \ sh -c "candle src/*.wxs -o build/ && light build/*.wixobj -o build/installer.msi"
创建docker-compose.yml简化多步骤构建:
version: '3.8' services: msi-builder: image: wix-msi-toolset:4.0 volumes: - ./wix-project:/workspace working_dir: /workspace environment: - WINEDEBUG=-all - USER_ID=${UID:-1000} - GROUP_ID=${GID:-1000} command: > sh -c "mkdir -p build && \ candle src/*.wxs -o build/ && \ light build/*.wixobj -o build/release.msi"
运行构建:
# 传递当前用户ID/组ID避免权限问题 UID=$(id -u) GID=$(id -g) docker-compose up
USER_ID/GROUP_ID环境变量指定容器内用户ID,避免生成文件权限异常。/workspace/resources/icon.ico)。免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429