Windows

Windows 子系统(wsl)

# 1. Windows 子系统(wsl)

1. Windows的搜索->启用或关闭Windows功能
2. 勾选:虚拟机平台、适用于Linux的Windows子系统
3. 重启电脑
4. 打开终端->输入命令:wsl --install --web-download

# 查看Windows子系统是否安装
5. wsl --list
6. 方式1:在终端的加号下拉列表可以看到Ubuntu,点击就可以进入;方式2:或者在我的电脑左下角有个Linux图标,点击进入,这种方式2也可以右键查看源码
7. cd /mnt/c/ 在子系统进入Windows的C盘
8. 安装 wsl --install -d Ubuntu-20.04
9. 启动 wsl --start Ubuntu-20.04

# 2. Windows 子系统中 doctor 安装

sudo apt update
sudo apt install docker.io
sudo service docker start

# 让当前用户不用 sudo 也能使用 docker
sudo usermod -aG docker $USER

# 查看版本,验证安装是否成功
docker --version

# 查看状态
sudo systemctl status docker

# 开机自启
sudo service docker start
sudo service docker enable

# 停止docker
sudo systemctl stop docker

# 3. electron 多环境打包,参考

#!/bin/bash
set -e
echo "============================================="
echo "  Electron 多平台打包脚本(Docker + WSL)"
echo "  打包目标:Windows x64 + Linux x64 + Linux arm64"
echo "============================================="

# 你的项目路径(固定,不用改)
PROJECT_PATH="/mnt/d/working/hyt-exam-cliten"

# 进入项目
cd "$PROJECT_PATH" || { echo "❌ 项目目录不存在"; exit 1; }

http_proxy=http://10.5.4.71:10808
https_proxy=http://10.5.4.71:10808

# 缓存
CACHE_ELECTRON="$HOME/.cache/electron"
CACHE_BUILDER="$HOME/.cache/electron-builder"
mkdir -p $CACHE_ELECTRON $CACHE_BUILDER

# Docker 参数
DOCKER_PARAMS="--rm -ti \
  -v $(pwd):/project \
  -w /project \
  -v $CACHE_ELECTRON:/root/.cache/electron \
  -v $CACHE_BUILDER:/root/.cache/electron-builder \
  -e ELECTRON_CACHE=/root/.cache/electron \
  -e ELECTRON_BUILDER_CACHE=/root/.cache/electron-builder"

# 打包 Windows 32位
echo -e "\n🚀 打包 Windows ia32..."
docker run $DOCKER_PARAMS electronuserland/builder:wine \
  bash -c "npm ci && npm run build:32"

# 打包 Windows 64位
echo -e "\n🚀 打包 Windows x64..."
docker run $DOCKER_PARAMS electronuserland/builder:wine \
  bash -c "npm ci && npm run build:64"

# 打包 Linux x64
echo -e "\n🚀 打包 Linux x64..."
docker run $DOCKER_PARAMS electronuserland/builder \
  bash -c "npm ci && npm run build:linux"

# 打包 Linux arm64
echo -e "\n🚀 打包 Linux arm64..."
docker run $DOCKER_PARAMS electronuserland/builder \
  bash -c "npm ci && npm run build:linuxarm"

echo -e "\n✅ 打包完成!文件在:$PROJECT_PATH/dist/"
explorer.exe "$PROJECT_PATH/dist"

# 4. 多环境打包脚本

#!/bin/bash
set -e
echo "============================================="
echo "  Electron 多平台打包脚本(Docker + WSL)"
echo "  打包目标:Windows x64 + Linux x64 + Linux arm64"
echo "============================================="

# 代理(让Docker也走代理)
HTTP_PROXY=http://10.5.4.71:10808
HTTPS_PROXY=http://10.5.4.71:10808

# 你的项目路径(固定,不用改)
PROJECT_PATH="/mnt/d/working/hyt-exam-cliten"

# 进入项目
cd "$PROJECT_PATH" || { echo "❌ 项目目录不存在"; exit 1; }

# 缓存
CACHE_ELECTRON="$HOME/.cache/electron"
CACHE_BUILDER="$HOME/.cache/electron-builder"
mkdir -p $CACHE_ELECTRON $CACHE_BUILDER

# Docker 参数
DOCKER_PARAMS="--rm -ti \
  -v $(pwd):/project \
  -w /project \
  -v $CACHE_ELECTRON:/root/.cache/electron \
  -v $CACHE_BUILDER:/root/.cache/electron-builder \
  -e ELECTRON_CACHE=/root/.cache/electron \
  -e ELECTRON_BUILDER_CACHE=/root/.cache/electron-builder"



# 打包 Linux X86
echo -e "\n🚀 打包 Linux X86"
docker run $DOCKER_PARAMS electronuserland/builder:20 \
  bash -c "rm -rf node_modules && npm ci && npm run build:linux"

echo -e "\n✅ 打包完成!文件在:$PROJECT_PATH/dist/"
explorer.exe "$PROJECT_PATH/dist"
上次更新: