You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
185 lines
4.8 KiB
185 lines
4.8 KiB
|
2 months ago
|
# WSL Superset 自启动配置说明
|
||
|
|
|
||
|
|
## 概述
|
||
|
|
|
||
|
|
本文档说明如何配置 `startup-superset.bat` 脚本在 Windows 11 系统开机或重启时自动执行,实现 WSL Docker 容器的自动管理。
|
||
|
|
|
||
|
|
## 文件说明
|
||
|
|
|
||
|
|
### 核心文件
|
||
|
|
- `startup-superset.bat` - 主要的批处理脚本,执行 WSL Docker 容器重启
|
||
|
|
- `SetupAutoStartup.ps1` - PowerShell 配置脚本,用于设置自启动任务
|
||
|
|
|
||
|
|
## 配置步骤
|
||
|
|
|
||
|
|
### 方法一:使用 PowerShell 脚本(推荐)
|
||
|
|
|
||
|
|
1. **以管理员身份运行 PowerShell**
|
||
|
|
- 右键点击开始菜单
|
||
|
|
- 选择 "Windows PowerShell (管理员)" 或 "终端 (管理员)"
|
||
|
|
|
||
|
|
2. **执行配置脚本**
|
||
|
|
```powershell
|
||
|
|
# 切换到脚本所在目录
|
||
|
|
cd "D:\Log\MyAvaloniaApp"
|
||
|
|
|
||
|
|
# 执行配置脚本
|
||
|
|
.\SetupAutoStartup.ps1
|
||
|
|
```
|
||
|
|
|
||
|
|
3. **验证配置结果**
|
||
|
|
- 脚本会自动创建 Windows 任务计划程序任务
|
||
|
|
- 任务名称:`WSL-Superset-AutoStart`
|
||
|
|
- 任务路径:`\WSL-Containers\`
|
||
|
|
|
||
|
|
### 方法二:手动配置任务计划程序
|
||
|
|
|
||
|
|
1. **打开任务计划程序**
|
||
|
|
- 按 `Win + R`,输入 `taskschd.msc`
|
||
|
|
- 或搜索 "任务计划程序"
|
||
|
|
|
||
|
|
2. **创建基本任务**
|
||
|
|
- 点击右侧 "创建基本任务"
|
||
|
|
- 名称:`WSL-Superset-AutoStart`
|
||
|
|
- 描述:`Auto restart Superset Docker container via WSL on system startup`
|
||
|
|
|
||
|
|
3. **设置触发器**
|
||
|
|
- 选择 "计算机启动时"
|
||
|
|
|
||
|
|
4. **设置操作**
|
||
|
|
- 选择 "启动程序"
|
||
|
|
- 程序/脚本:`D:\Log\MyAvaloniaApp\startup-superset.bat`
|
||
|
|
- 起始于:`D:\Log\MyAvaloniaApp`
|
||
|
|
|
||
|
|
5. **完成配置**
|
||
|
|
- 勾选 "当单击完成时,打开此任务的属性对话框"
|
||
|
|
- 在属性对话框中:
|
||
|
|
- 勾选 "使用最高权限运行"
|
||
|
|
- 在 "设置" 选项卡中勾选 "允许按需运行任务"
|
||
|
|
|
||
|
|
## 任务配置详情
|
||
|
|
|
||
|
|
### 任务信息
|
||
|
|
- **任务名称**:`WSL-Superset-AutoStart`
|
||
|
|
- **任务路径**:`\WSL-Containers\`
|
||
|
|
- **描述**:Auto restart Superset Docker container via WSL on system startup
|
||
|
|
- **运行权限**:SYSTEM(最高权限)
|
||
|
|
|
||
|
|
### 触发器设置
|
||
|
|
- **触发条件**:系统启动时
|
||
|
|
- **延迟**:无延迟
|
||
|
|
- **重复**:不重复
|
||
|
|
|
||
|
|
### 操作设置
|
||
|
|
- **操作类型**:启动程序
|
||
|
|
- **程序路径**:`startup-superset.bat` 的完整路径
|
||
|
|
- **工作目录**:脚本所在目录
|
||
|
|
|
||
|
|
### 条件设置
|
||
|
|
- **电源**:允许在电池供电时启动
|
||
|
|
- **网络**:仅在网络可用时运行
|
||
|
|
|
||
|
|
## 验证配置
|
||
|
|
|
||
|
|
### 检查任务状态
|
||
|
|
1. 打开任务计划程序
|
||
|
|
2. 导航到 `\WSL-Containers\WSL-Superset-AutoStart`
|
||
|
|
3. 查看任务状态和上次运行结果
|
||
|
|
|
||
|
|
### 手动测试
|
||
|
|
1. 在任务计划程序中右键点击任务
|
||
|
|
2. 选择 "运行"
|
||
|
|
3. 观察执行结果和日志输出
|
||
|
|
|
||
|
|
### 查看执行日志
|
||
|
|
- 任务计划程序会显示上次运行结果
|
||
|
|
- `startup-superset.bat` 脚本会输出详细的执行日志
|
||
|
|
|
||
|
|
## 故障排除
|
||
|
|
|
||
|
|
### 常见问题
|
||
|
|
|
||
|
|
1. **任务未执行**
|
||
|
|
- 检查任务是否启用
|
||
|
|
- 验证批处理文件路径是否正确
|
||
|
|
- 确认 WSL 和 Docker 环境是否正常
|
||
|
|
|
||
|
|
2. **权限不足**
|
||
|
|
- 确保任务以最高权限运行
|
||
|
|
- 检查 WSL 发行版权限设置
|
||
|
|
|
||
|
|
3. **WSL 未启动**
|
||
|
|
- 确保 WSL 功能已启用
|
||
|
|
- 验证 Ubuntu-22.04 发行版已安装
|
||
|
|
|
||
|
|
4. **Docker 容器不存在**
|
||
|
|
- 检查 Superset 容器是否已创建
|
||
|
|
- 验证容器名称是否正确
|
||
|
|
|
||
|
|
### 调试方法
|
||
|
|
|
||
|
|
1. **查看任务历史**
|
||
|
|
- 在任务计划程序中查看任务历史记录
|
||
|
|
- 检查错误代码和详细信息
|
||
|
|
|
||
|
|
2. **手动执行脚本**
|
||
|
|
- 直接运行 `startup-superset.bat` 测试功能
|
||
|
|
- 观察控制台输出和错误信息
|
||
|
|
|
||
|
|
3. **检查系统日志**
|
||
|
|
- 查看 Windows 事件查看器
|
||
|
|
- 检查应用程序和系统日志
|
||
|
|
|
||
|
|
## 管理任务
|
||
|
|
|
||
|
|
### 启用/禁用任务
|
||
|
|
- 在任务计划程序中右键点击任务
|
||
|
|
- 选择 "启用" 或 "禁用"
|
||
|
|
|
||
|
|
### 修改任务
|
||
|
|
- 右键点击任务选择 "属性"
|
||
|
|
- 修改触发器、操作或条件设置
|
||
|
|
|
||
|
|
### 删除任务
|
||
|
|
- 右键点击任务选择 "删除"
|
||
|
|
- 或使用 PowerShell 命令:
|
||
|
|
```powershell
|
||
|
|
Unregister-ScheduledTask -TaskName "WSL-Superset-AutoStart" -Confirm:$false
|
||
|
|
```
|
||
|
|
|
||
|
|
## 安全注意事项
|
||
|
|
|
||
|
|
1. **权限管理**
|
||
|
|
- 任务以 SYSTEM 权限运行,具有最高系统权限
|
||
|
|
- 确保批处理脚本内容安全可靠
|
||
|
|
|
||
|
|
2. **网络安全**
|
||
|
|
- 任务仅在网络可用时运行
|
||
|
|
- 避免在不可信网络环境中执行
|
||
|
|
|
||
|
|
3. **资源监控**
|
||
|
|
- 监控系统资源使用情况
|
||
|
|
- 确保脚本不会影响系统性能
|
||
|
|
|
||
|
|
## 维护建议
|
||
|
|
|
||
|
|
1. **定期检查**
|
||
|
|
- 定期验证任务执行状态
|
||
|
|
- 检查 WSL 和 Docker 环境健康状态
|
||
|
|
|
||
|
|
2. **日志管理**
|
||
|
|
- 定期清理执行日志
|
||
|
|
- 监控错误和异常情况
|
||
|
|
|
||
|
|
3. **更新维护**
|
||
|
|
- 及时更新 WSL 和 Docker 版本
|
||
|
|
- 根据需要对脚本进行优化
|
||
|
|
|
||
|
|
## 技术支持
|
||
|
|
|
||
|
|
如遇到问题,请检查:
|
||
|
|
1. Windows 版本和 WSL 版本兼容性
|
||
|
|
2. Docker Desktop 运行状态
|
||
|
|
3. 网络连接和防火墙设置
|
||
|
|
4. 系统权限和用户账户设置
|