You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Jenkins连接EC2 Windows实例并静默安装Chrome等软件

解决Jenkins连接Windows实例并静默安装软件的方案

嘿,这个问题我之前在AWS环境里刚好处理过,给你一步步拆解下怎么解决连接Windows实例和静默安装软件的问题:

一、让Jenkins顺利连接Windows实例

Windows不像Linux默认用SSH,它靠**WinRM(Windows Remote Management)**实现远程管理,得先搞定WinRM的配置,再在Jenkins里对接:

1. 用AWS用户数据自动配置WinRM(推荐)

既然你是用AWS SDK程序化创建实例,把WinRM配置写到用户数据里是最高效的,实例启动后自动就绪,不用手动操作。下面是一段可直接嵌入的PowerShell脚本:

# 启用WinRM远程管理
Enable-PSRemoting -Force

# 设置WinRM服务为自动启动
Set-Service -Name WinRM -StartupType Automatic

# 配置WinRM允许非加密连接和基础认证(测试环境用,生产建议换SSL)
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
winrm set winrm/config/service/auth '@{Basic="true"}'

# 开放WinRM HTTP端口的防火墙规则
New-NetFirewallRule -Name "WinRM-HTTP" -DisplayName "WinRM HTTP" -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 5985

# 设置信任所有远程主机(测试环境用,生产建议限制指定IP)
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*" -Force

生产环境注意:别用上面的非加密配置,建议启用WinRM SSL(端口5986)并配置证书认证,安全性更高。

2. 在Jenkins中配置Windows节点

Jenkins连接Windows实例有两种主流方式:

  • WinRM插件(原生推荐):先安装WinRM Plugin插件,然后在「管理节点」中添加新节点:
    • 选择「固定节点」,填写节点名称
    • 启动方法选「WinRM」,填入实例的IP、端口(默认5985)
    • 输入Windows实例的管理员用户名和密码,点击「测试连接」,成功后保存即可
  • OpenSSH方式(可选):如果是Windows 10/Server 2019及以上版本,可安装OpenSSH服务器,之后像Linux一样用SSH连接,但需要额外配置服务和安全组,不如WinRM原生便捷。

二、静默安装Chrome及其他软件

Windows的静默安装核心是用命令行参数,推荐用**Chocolatey(Windows包管理器)**统一管理,比手动写msiexec命令省心太多:

1. 先安装Chocolatey(可集成到用户数据或Jenkins构建步骤)

如果没提前在用户数据里安装,可在Jenkins的远程PowerShell步骤中执行:

Set-ExecutionPolicy Bypass -Scope Process -Force; 
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; 
iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

2. 静默安装Chrome和其他软件

用Chocolatey的话,一行命令就能完成静默安装:

# 静默安装Chrome,自动确认所有提示
choco install googlechrome -y --no-progress
  • -y:自动跳过所有确认提示
  • --no-progress:隐藏安装进度,适合自动化场景

其他软件比如OpenJDK、Node.js同理:

choco install openjdk11 nodejs -y --no-progress

如果不想用Chocolatey,直接用Chrome官方安装包静默安装:

# 下载Chrome企业版安装包
Invoke-WebRequest -Uri "https://dl.google.com/tag/s/dl/chrome/install/googlechromestandaloneenterprise64.msi" -OutFile "C:\temp\chrome.msi"

# 完全静默安装,不重启
msiexec /i C:\temp\chrome.msi /qn /norestart
  • /qn:无界面完全静默模式
  • /norestart:安装完成不自动重启(自动化场景尽量避免强制重启)

额外注意事项

  • 确保Jenkins所在机器能通过AWS安全组访问Windows实例的WinRM端口(5985/5986)
  • 用AWS SDK创建Windows实例时,记得初始化管理员密码(或通过IAM角色自动配置权限)

内容的提问来源于stack exchange,提问作者abrar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:22:56