CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
PowerShell 入门/课时/Windows 部署 CodeRoadMap
RawBlame
课时目录12 节

PowerShell 入门

  1. 01PowerShell 是什么
  2. 02Cmdlet 基础
  3. 03管道与对象
  4. 04变量与类型
  5. 05脚本与函数
  6. 06文件与路径
  7. 07远程与会话
  8. 08PowerShell vs Bash
  9. 09Windows 部署 CodeRoadMap
  10. 10GitHub Actions Windows
  11. 11Windows 容器简介
  12. 12综合练习

Windows 部署 CodeRoadMap

sync-courses.ps1、package-prod.bat 解读。

35 分钟

Windows 部署 CodeRoadMap

在 Windows 开发机 上,常用 PowerShell 同步课程内容、打 platform 生产包,再上传到 Linux 服务器。本节解读 deploy\scripts\sync-courses.ps1 与 platform\bin\package-prod.bat。

学习目标

  • 跑通 sync-courses.ps1 导入与验证课程
  • 理解 package-prod.bat 构建流程
  • 衔接 linux-deploy 服务器侧步骤

核心内容

前置条件

H:\work\java-nav\
  ├─ backend 运行在 :8080
  ├─ content\课程\ 含 outline + drafts
  └─ node、npm 在 PATH 中

本地 API 健康:Invoke-RestMethod http://127.0.0.1:8080/actuator/health。

sync-courses.ps1 三步

cd H:\work\java-nav

# 完整同步
.\deploy\scripts\sync-courses.ps1

# 仅预览去重(不写库)
.\deploy\scripts\sync-courses.ps1 -DryRun

# 指定 API 与管理员
.\deploy\scripts\sync-courses.ps1 -ApiBase "http://127.0.0.1:8080" -AdminPassword "your-password"

三步:Import(import-all-courses.mjs)→ Remove duplicates(-DryRun 设 $env:DRY_RUN)→ Verify(/api/tracks 对照 $expected)。finally 清理环境变量。

package-prod.bat 两步

cd H:\work\java-nav\platform
bin\package-prod.bat
  1. 复制 deploy\env\prod\platform.env.example → .env.production.local(部署前改 INTERNAL_API_TOKEN)
  2. npm run build → assemble-standalone.bat → 产出 release\

完成后上传 platform\release\ 到服务器,与 JAR 一并启动(Linux 侧见 linux-deploy)。

典型工作流

# 1. 编辑 content/课程/powershell-essentials/drafts/*.md
# 2. 同步到本地 API
.\deploy\scripts\sync-courses.ps1
# 3. 打前端包
cd platform; .\bin\package-prod.bat
# 4. scp release/ + backend.jar → 服务器(或 GHA 自动部署)

CI 自动化见 gha-deploy;容器见 docker-essentials。

练习

  • 本地 backend 启动后,DryRun 跑一遍 sync-courses
  • 阅读 sync-courses.ps1 的 $expected 数组,确认含 powershell-essentials
  • 执行 package-prod.bat,确认 release\ 目录生成
  • 小结

    sync-courses.ps1 管内容入库,package-prod.bat 管前端产物——Windows 构建,Linux 运行。 下一课 GitHub Actions Windows。

    加载本节练习…
    ← 上一课PowerShell vs Bash下一课 →GitHub Actions Windows