是否可以在Windows容器中安装Visual Studio

时间:2016-12-22 07:45:53

标签: visual-studio docker continuous-integration containers windows-server

是否可以在Windows Server上的Windows Container中安装任何版本的Visual Studio?

动机是使用Windows Containers在持续集成系统中构建软件,以便构建环境标准化。

5 个答案:

答案 0 :(得分:18)

Visual Studio上的Visual Studio似乎to not be supported officially,但我同意能够做到这一点真的很棒。试试吧:

[...]
Microsoft (R) Build Engine version 15.3.409.57025 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

(我将此图片推入lukaslansky/visualstudio-netwebworkload,请谨慎使用。)

构建的输出是:

--add

所以这似乎有效!您应该使用这些DataTable安装程序参数来指定构建所需的组件,它们对应于您在GUI中看到的工作负载和组件。 See the documentation.

答案 1 :(得分:3)

Windows Containers目前不包含GUI应用程序。限制是在Microsoft上,而不是在Docker上。

例如尝试一些简单的操作,例如运行记事本(在Windows Server Core容器中)。该过程已启动,但未显示任何GUI。

Notepad launched, but no GUI shows up

答案 2 :(得分:1)

仅仅为了记录MS没有计划支持VS内部容器,你有最好的选择是MsBuild。几个月前是可能的,但VS的最新版本是不可能的。资料来源:vsts-agents

答案 3 :(得分:0)

此时最好的选择是使用Visual Studio Build Tools

答案 4 :(得分:0)

在Windows容器中安装可视化构建链的一种方法是使用巧克力包装visualstudio2017buildtools

使用类似起动Dockerfile:

FROM microsoft/windowsservercore
RUN powershell.exe -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SETX PATH "%PATH%;%ALLUSERSPROFILE%\chocolatey\bin" 
RUN choco install -y  visualstudio2017buildtools --package-parameters "--add Microsoft.VisualStudio.Workload.VCTools --installPath C:\BuildTools" || IF "%ERRORLEVEL%"=="3010" EXIT 0      
RUN call "C:\BuildTools\VC\Auxiliary\Build\vcvars64.bat"