установить .net Framework 4.7.2 в докер - PullRequest
0 голосов
/ 11 января 2019

Я новичок в .Net Environment, я пытаюсь внедрить докер для моей фирмы. Ранее они использовали 4.5, поэтому я использовал следующий оператор в моем файле dockerfile:

RUN Install-WindowsFeature NET-Framework-45-ASPNET ; \
Install-WindowsFeature Web-Asp-Net45

Теперь я хочу сделать то же самое для фреймворка 4.7.2 - я думал, что это сработает, если я запущу такие выражения, как:

RUN Install-WindowsFeature NET-Framework-472-ASPNET ; \
Install-WindowsFeature Web-Asp-Net472

Но это не работает, вместо этого отображается следующая ошибка:

Install-WindowsFeature : ArgumentNotValid: The role, role service, or feature
name is not valid: 'NET-Framework-472-ASPNET'. The name was not found.
At line:1 char:1
+ Install-WindowsFeature NET-Framework-472-ASPNET ; Install-WindowsFeat ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (NET-Framework-472-ASPNET:Strin
   g) [Install-WindowsFeature], Exception
    + FullyQualifiedErrorId : NameDoesNotExist,Microsoft.Windows.ServerManager
   .Commands.AddWindowsFeatureCommand

Пожалуйста, помогите мне с тем же. Я действительно застрял и ничего не могу найти в интернете.

Ответы [ 3 ]

0 голосов
/ 11 января 2019

Я не предоставил вам ответ, но предлагаю найти версию ядра .net, которая совместима с исходным кодом и библиотеками, используемыми вашей фирмой; по моему было бы проще работать с контейнерами linux, а не с windows

0 голосов
/ 08 марта 2019

Итак, я искал несколько вещей в Интернете и обнаружил, что есть одно решение, которое, если я упомяну, об установке Chocolatey на powershell внутри моего файла Docker. Эту ссылку я получил от этого поста от anothony chu:

так что я использовал:

# Install Chocolatey
RUN @powershell -NoProfile -ExecutionPolicy Bypass -Command "$env:ChocolateyUseWindowsCompression='false'; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
RUN powershell add-windowsfeature web-asp-net45 \
&& choco install dotnet4.7 --allow-empty-checksums -y \

в моем файле Docker, и теперь все работает хорошо и хорошо.

0 голосов
/ 11 января 2019

Вместо самостоятельной установки NET-Framework вы можете использовать

ОТ microsoft / aspnet

или

ОТ microsoft / dotnet-framework: 4.7.2

для использования образа с уже установленной платформой dotnet.

или любую другую нужную версию.

См. https://hub.docker.com/u/microsoft/ для всех изображений на док-хабе

...