Установка пакета SDK для .NET или среды выполнения .NET в Alpine

Внимание

.NET 8 выпущен 14 ноября 2023 года. Может потребоваться время, чтобы пакеты отображались в веб-каналах диспетчера пакетов.

Платформа .NET поддерживается в Alpine, и в этой статье описывается установка .NET в Alpine. Если поддержка какой-либо версии Alpine прекращается, то .NET также перестает поддерживать ее.

Если вы используете Docker, попробуйте использовать официальные образы Docker .NET вместо установки самостоятельно.

Если вы хотите разрабатывать приложения .NET, установите пакет SDK (включает среду выполнения). Если нужно просто запустить приложения, установите среду выполнения. Если вы устанавливаете среду выполнения, мы рекомендуем установить среду выполнения ASP.NET Core, так как она включает в себя среды выполнения .NET и ASP.NET Core.

dotnet --list-sdks Используйте команды, dotnet --list-runtimes чтобы узнать, какие версии установлены. Дополнительные сведения см. в статье Проверка того, установлена ли платформа .NET.

Диспетчер пакетов Alpine поддерживает установку некоторых версий .NET. Если пакет .NET недоступен, необходимо установить .NET одним из следующих альтернативных способов:

Установка .NET 8

.NET 8 еще недоступен в ветвь по умолчанию репозитория пакетов Alpine. edge Используйте ветвь для установки .NET 8. Кроме того, используйте один из следующих способов установки .NET 8:

Установка .NET 7

Установка пакета SDK

Пакет SDK для .NET позволяет разрабатывать приложения с помощью .NET. При установке пакета SDK для .NET не нужно устанавливать соответствующую среду выполнения. Чтобы установить пакет SDK для .NET, выполните приведенную ниже команду.

sudo apk add dotnet7-sdk

Установка среды выполнения

Среда выполнения ASP.NET Core позволяет запускать приложения, созданные с помощью версии .NET без поддержки среды выполнения. Следующая команда устанавливает ASP.NET Core Runtime, которая является самой совместимой средой выполнения для .NET. В терминале выполните приведенную ниже команду.

sudo apk add aspnetcore7-runtime

В качестве альтернативы среде выполнения ASP.NET Core вы можете установить среду выполнения .NET без поддержки ASP.NET Core. Для этого в приведенной выше команде замените aspnetcore7-runtime на dotnet7-runtime.

sudo apk add dotnet7-runtime

Установка .NET 6

Установка пакета SDK

Пакет SDK для .NET позволяет разрабатывать приложения с помощью .NET. При установке пакета SDK для .NET не нужно устанавливать соответствующую среду выполнения. Чтобы установить пакет SDK для .NET, выполните приведенную ниже команду.

sudo apk add dotnet6-sdk

Установка среды выполнения

Среда выполнения ASP.NET Core позволяет запускать приложения, созданные с помощью версии .NET без поддержки среды выполнения. Следующая команда устанавливает ASP.NET Core Runtime, которая является самой совместимой средой выполнения для .NET. В терминале выполните приведенную ниже команду.

sudo apk add aspnetcore6-runtime

В качестве альтернативы ASP.NET Core Runtime можно установить среду выполнения .NET, которая не включает поддержку ASP.NET Core. Чтобы установить его, замените в предыдущей команде dotnet6-runtimeследующим образомaspnetcore6-runtime:

sudo apk add dotnet6-runtime

Поддерживаемые дистрибутивы

В приведенной ниже таблице содержится список поддерживаемых сейчас выпусков .NET и версий Alpine, в которых они поддерживаются. Эти версии поддерживаются до окончания поддержки версии .NET либо до окончания жизненного цикла версии Alpine.

Алпайн Поддерживаемая версия Доступно в диспетчер пакетов
3,19 .NET 8.0, .NET 7.0, .NET 6.0 .NET 7.0, .NET 6.0
3,18 .NET 8.0, .NET 7.0, .NET 6.0 .NET 7.0, .NET 6.0
3,17 .NET 8.0, .NET 7.0, .NET 6.0 .NET 7.0, .NET 6.0
3.16 .NET 7.0, .NET 6.0 .NET 6.0
3,15 .NET 7.0, .NET 6.0 нет

Следующие версии .NET больше не поддерживаются (❌).

  • .NET 5
  • .NET Core 3.1.
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0;

Поддерживаемые архитектуры

В следующей таблице приведен список поддерживаемых в настоящее время выпусков .NET и архитектуры Alpine, на которые они поддерживаются. Эти версии остаются поддерживаемыми до тех пор, пока версия .NET не достигнет конца поддержки или архитектуры Alpine не поддерживается#. Обратите внимание, что только x86_64, armv7aarch64 официально поддерживается корпорацией Майкрософт. Другие архитектуры поддерживаются обслуживателями дистрибутивов и могут быть установлены с помощью диспетчера apk пакетов.

Архитектура .NET 6 .NET 7 .NET 8
x86_64 3.16, 3.17, 3.18 3.17, 3.18 3.17, 3.18
x86 нет None нет
aarch64 3.16, 3.17, 3.18 3.17, 3.18 3.17, 3.18
armv7 3.16, 3.17, 3.18 3.17, 3.18 3.17, 3.18
armhf нет None нет
s390x 3,17 3,17 3,17
ppc64le нет None нет
riscv64 нет None нет

Установка предварительных версий

Предварительные версии и выпуски версии .NET недоступны в репозиториях пакетов. Предварительные версии и кандидаты .NET можно установить одним из следующих способов:

Удалите предварительные версии

При использовании диспетчера пакетов для управления установкой .NET вы можете столкнуться с конфликтом, если ранее вы установили предварительную версию. Диспетчер пакетов может интерпретировать выпуск, не являющийся предварительной версией, в качестве более ранней версии .NET. Чтобы установить выпуск, не относящийся к предварительной версии, сначала удалите предварительные версии. Дополнительные сведения об удалении .NET см. в разделе Удаление среды выполнения .NET и пакета SDK.

Зависимости

Если для установки используется диспетчер пакетов, эти библиотеки устанавливаются автоматически. Но если вы устанавливаете .NET вручную или публикуете автономное приложение, вам потребуется установить эти библиотеки:

3.18+

  • ca-certificates-bundle
  • libgcc
  • libssl3
  • libstdc++
  • zlib
  • libgdiplus (если для приложения .NET требуется сборка System.Drawing.Common)

3.15 - 3.17

  • icu-libs
  • krb5-libs
  • libgcc
  • libintl
  • libssl3
  • libstdc++
  • zlib
  • libgdiplus (если для приложения .NET требуется сборка System.Drawing.Common)

apk add Используйте команду для установки зависимостей.

Если приложение .NET использует сборку System.Drawing.Common , необходимо также установить libgdiplus. Так как System.Drawing.Common больше не поддерживается в Linux, это работает только в .NET 6 и требует установки System.Drawing.EnableUnixSupport параметра конфигурации среды выполнения.

Чтобы установить libgdiplus, выполните следующую команду:

apk add libgdiplus

Следующие шаги