# DotNetCore-Agent **Repository Path**: TPC_GrownDragon/DotNetCore-Agent ## Basic Information - **Project Name**: DotNetCore-Agent - **Description**: .NET Core TFS 生成代理 Docker 映像制作。 - **Primary Language**: Docker - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-10-08 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 基于 Windows 的 DotNet Core VSTS 生成代理容器映像 ================================================= ## 运行环境需求 - Docker 宿主操作系统:Windows 10 1809 / Windows Server 2019 - Docker CE 2+ / Docker EE 18.09+ - Docker 基础映像:Core Server 1809 ## 使用说明 使用 `Git` 工具将本存储库最新内容克隆到容器服务器,并使用 `powershell`(需管理员权限)逐一完成下步骤: - 生成映像 运行脚本 'build.ps1' 来生成映像。 * 语法 ```ps1 .\build.ps1 [-Environment (ENT|HOME|WWW) -BaseImage servercore:1809 -Revision -Clear] ``` * 参数说明 **Environment** 指定执行该脚本的环境,用于选择下载源,缺省值为 "WWW"。 可选值及其含义:"WWW" - 从互联网直接下载,"ENT" - 从企业环境下载,"HOME" - 从家中环境下载。 **BaseImage** 指定 Docker 基础映像的名称及标签,默认为 "servercore:1809"。 可选值:"servercore:1809"。 **Revision** 指定基础映像的修订版本号,缺省为空字符串。一般以 “KB<>” 的形式出现。 默认为空字符串。 **Clear** 指定在映像生成后是否清理过程中产生的临时文件,缺省时将需要手工清理。 - 创建容器 运行脚本 `run.ps1` 来创建并启动容器。 * 语法 ```ps1 .\run.ps1 -ImageName [-ContainerName -WorkFolder -AutoStart] -TfsUrl -TfsAuth [pat | negotiate | alt | integrated] [-Token -UserName -Password ] -TfsAgentPool [-AgentName ] ``` * 参数说明 **ImageName** 指定映像名称,一般格式如:REPOSITORY:TAG,必填参数。即为上一节中生成的映像名称。 **ContainerName** 指定将要创建的容器名称。缺省为 DotNetCore-VSTS-Agent-Service。 **WorkFolder** 指定将要映射到容器中用于工作目录的本地文件夹路径。缺省为 D:/DotNetCoreVSTSAgent/Works。 **AutoStart** 指定容器是否随系统启动而自动启动。缺省为 false。 **TfsUrl** 指定 Azure DevOps 或 TFS 服务器 URL。必填参数。 **TfsAuth** 指定服务器身份验证类型。必填参数。 可选值:`pat`, `negotiate`, `alt`, `integrated`。 **Token** 指定用于访问服务器的个人访问令牌。当 `-TfsAuth` 参数等于 `pat` 时使用。 **UserName** 指定用于访问服务器的 Windows 用户名。当 `-TfsAuth` 参数等于 `negotiate` 或 `alt` 时使用。 **Password** 指定用于访问服务器的 Windows 用户密码。当 `-TfsAuth` 参数等于 `negotiate` 或 `alt` 时使用。 **TfsAgentPool** 指定将要加入的代理池名称。必填参数。 **AgentName** 指定当前代理的名称。缺省时将使用机器名称作为代理的名称。