Как установить Microsoft .NET Core SDK в Linux
.NET Core — это бесплатная кроссплатформенная платформа с открытым исходным кодом, разработанная Microsoft для создания настольных приложений, мобильных приложений, веб-приложений, приложений Интернета вещей, игровых приложений и т. д. Если вы разработчик dotnet из Платформа Windows и ядро .NET помогают легко настроить среду разработки в любых Linux и Unix-подобных операционных системах. В этом пошаговом руководстве объясняется, как установить Microsoft .NET Core SDK в Linux и как написать свое первое приложение с использованием .NET.
1. Установите Microsoft .NET Core SDK в Linux.
Как уже говорилось, ядро .NET является кроссплатформенным, поэтому оно поддерживает GNU/Linux, Mac OS и Windows. На момент обновления этого руководства последней базовой версией .NET была 7.0.
Базовый SDK .Net упакован для популярных операционных систем GNU/Linux, включая Debian, Fedora, CentOS Stream, Oracle Linux, RHEL, AlmaLinux, Rocky Linux, SUSE/openSUSE и Ubuntu.
Мы можем установить .NET в Linux вручную, через менеджер пакетов или с помощью сценария установки. В этом руководстве мы увидим, как установить .NET с помощью менеджера пакетов и сценария.
1.1. Установите .NET SDK с помощью диспетчера пакетов.
Внимание! Если вы устанавливаете .NET SDK, вам не нужно устанавливать соответствующую среду выполнения. .NET SDK включает среду выполнения для разработки и запуска приложений .NET. Или, если вам нужно только запускать приложения, установите Runtime. Если вы устанавливаете среду выполнения, я предлагаю вам установить среду выполнения ASP.NET Core, поскольку она включает в себя среды выполнения .NET и ASP.NET Core. Среда выполнения .NET Core не включает среду выполнения ASP.NET Core.
1.1.1. Установите .NET SDK в Alpine Linux
Чтобы установить .NET SDK в Alpine Linux, запустите:
sudo apk add dotnet7-sdk
Установите ASP.NET Core Runtime в Alpine Linux:
sudo apk add aspnetcore7-runtime
Установите .NET Core Runtime в Alpine Linux:
sudo apk add dotnet7-runtime
1.1.2. Установите .NET SDK в Debian
Сначала добавьте ключ подписи пакета Microsoft в список доверенных ключей и добавьте репозиторий пакетов, выполнив следующие команды.
Debian 11:
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
Debian 10:
wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
Обновите списки репозиториев и установите .NET core SDK с помощью команд:
sudo apt-get update
sudo apt-get install -y dotnet-sdk-7.0
Установите среду выполнения ASP.NET Core:
sudo apt-get install -y aspnetcore-runtime-7.0
Установите среду выполнения .NET Core:
sudo apt-get install -y dotnet-runtime-7.0
1.1.3. Установите .NET SDK в Fedora
Внимание! .NET 7 еще не готова для Fedora. Так что пока установите .NET версии 6. Мы обновим руководство после того, как будет готова версия 7.
.NET 6 доступен в репозиториях по умолчанию. Чтобы установить .NET Core SDK в Fedora, выполните:
sudo dnf install dotnet-sdk-6.0
Установите среду выполнения ASP.NET Core:
sudo dnf install aspnetcore-runtime-6.0
Установите среду выполнения .NET Core:
sudo dnf install dotnet-runtime-6.0
1.1.4. Установите .NET SDK в поток CentOS.
.NET доступен в репозиториях AppStream для версий CentOS Stream 9 и 8.
Чтобы установить последнюю версию .NET SDK в CentOS Stream, запустите:
sudo dnf install dotnet-sdk-7.0
Установите среду выполнения ASP.NET Core:
sudo dnf install aspnetcore-runtime-7.0
Установите среду выполнения .NET Core:
sudo dnf install dotnet-runtime-7.0
1.1.5. Установите .NET SDK в RHEL, AlmaLinux, Rocky Linux.
.NET включен в репозитории AppStream для версий RHEL, AlmaLinux и Rocky Linux 9 и 8.
Чтобы установить последнюю версию .NET SDK в CentOS Stream, запустите:
sudo dnf install dotnet-sdk-7.0
Установите среду выполнения ASP.NET Core:
sudo dnf install aspnetcore-runtime-7.0
Установите среду выполнения .NET Core:
sudo dnf install dotnet-runtime-7.0
1.1.6. Установите .NET SDK в openSUSE.
Добавьте ключ подписи пакета Microsoft и репозиторий пакетов:
sudo zypper install libicu
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
wget https://packages.microsoft.com/config/opensuse/15/prod.repo
sudo mv prod.repo /etc/zypp/repos.d/microsoft-prod.repo
sudo chown root:root /etc/zypp/repos.d/microsoft-prod.repo
Обновите репозитории и установите .NET SDK с помощью команд:
sudo zypper update
sudo zypper install dotnet-sdk-7.0
Установите среду выполнения ASP.NET Core:
sudo zypper install aspnetcore-runtime-7.0
Установите среду выполнения .NET Core:
sudo zypper install dotnet-runtime-7.0
1.1.7. Установите .NET Core SDK в Ubuntu
Добавьте ключ подписи пакета Microsoft в список доверенных ключей и добавьте репозиторий пакетов в Ubuntu 22.10 и более ранних версиях:
wget https://packages.microsoft.com/config/ubuntu/22.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
Обновите списки репозиториев пакетов и установите .NET Core SDK с помощью команд:
sudo apt-get update
sudo apt-get install -y dotnet-sdk-7.0
Установите среду выполнения ASP.NET Core:
sudo apt-get install -y aspnetcore-runtime-7.0
Установите среду выполнения .NET Core:
sudo apt-get install -y dotnet-runtime-7.0
Информацию о других дистрибутивах см. в официальном разделе установки.
1.2. Установите .NET SDK с помощью сценария установщика.
Разработчики .NET создали скрипт для автоматизации установки .NET SDK. Этот скрипт должен работать в дистрибутивах Linux, в которых установлен BASH.
Обратите внимание, что SDK необходимо устанавливать без взаимодействия с пользователем и без прав администратора.
Загрузите сценарий установщика .NET по ссылке https://dot.net/v1/dotnet-install.sh.
wget https://dot.net/v1/dotnet-install.sh
Сделайте скрипт исполняемым с помощью команды:
sudo chmod +x ./dotnet-install.sh
Теперь запустите сценарий для установки .NET SDK в Linux. Обратите внимание, что вы должны запускать эту команду как обычный пользователь (т.е. без прав администратора).
./dotnet-install.sh
Пример вывода:
dotnet-install: Note that the intended use of this script is for Continuous Integration (CI) scenarios, where:
dotnet-install: - The SDK needs to be installed without user interaction and without admin rights.
dotnet-install: - The SDK installation doesn't need to persist across multiple CI runs.
dotnet-install: To set up a development environment or to run apps, use installers rather than this script. Visit https://dotnet.microsoft.com/download to get the installer.
dotnet-install: Attempting to download using aka.ms link https://dotnetcli.azureedge.net/dotnet/Sdk/6.0.404/dotnet-sdk-6.0.404-linux-x64.tar.gz
dotnet-install: Extracting zip from https://dotnetcli.azureedge.net/dotnet/Sdk/6.0.404/dotnet-sdk-6.0.404-linux-x64.tar.gz
dotnet-install: Installed version is 6.0.404
dotnet-install: Adding to current process PATH: `/home/ostechnix/.dotnet`. Note: This change will be visible only when sourcing script.
dotnet-install: Note that the script does not resolve dependencies during installation.
dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
dotnet-install: Installation finished successfully.
Установите .NET SDK в Linux с помощью сценария установщика
По умолчанию сценарий устанавливает LTS-версию .NET SDK, то есть версию 6.
Если вы хотите установить версию .NET SDK 7, просто используйте параметр --versionlatest
:
./dotnet-install.sh --version latest
Если вы хотите установить .NET Runtime вместо SDK, используйте параметр --runtime
.
./dotnet-install.sh --version latest --runtime aspnetcore
Вы также можете установить определенную основную версию, например .NET 7.0 SDK, с помощью параметра --channel
:
./dotnet-install.sh --channel 7.0
Наконец, добавьте PATH dotnet (т. е. /home/ostechnix/.dotnet
) в свой ~/.profile
или ~/.bashrc
или эквивалентный. и выйдите из системы и войдите снова.
vi ~/.bashrc
Добавьте следующую строку:
export PATH="$PATH:/home/ostechnix/.dotnet"
Замените ostechnix
своим собственным.
Создайте файл ~/.bashrc
или выйдите из системы и войдите снова, чтобы изменения вступили в силу.
source ~/.bashrc
2. Проверьте установку .NET.
Чтобы проверить, установлен ли .NET на вашем компьютере, сделайте следующее.
Проверьте установленную версию .NET core SDK с помощью команды:
$ dotnet --version
7.0.101
Проверьте установленные версии SDK:
$ dotnet --list-sdks
7.0.101 [/usr/share/dotnet/sdk]
Проверьте установленные версии Runtime:
$ dotnet --list-runtimes
Microsoft.AspNetCore.App 7.0.1 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 7.0.1 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
Чтобы получить помощь, запустите:
dotnet --help
Чтобы просмотреть справочное руководство по подкоманде, выполните:
dotnet [command] --help
3. Создайте свое первое приложение с помощью Dotnet
Мы успешно установили Dotnet Core SDK в нашу систему Linux. Пришло время создать наше первое приложение с использованием dotnet.
Для целей этого руководства я собираюсь создать новое приложение под названием "ostechnixApp". Для этого просто выполните следующую команду:
dotnet new console -o ostechnixApp
Пример вывода:
The template "Console App" was created successfully.
Processing post-creation actions...
Restoring /home/ostechnix/ostechnixApp/ostechnixApp.csproj:
Determining projects to restore...
Restored /home/ostechnix/ostechnixApp/ostechnixApp.csproj (in 57 ms).
Restore succeeded.
Создать новое консольное приложение
Как вы можете видеть в приведенном выше выводе, .Net создал новое приложение типа «консоль». Параметр -o
создает каталог с именем "ostechnixApp
", в котором вы храните данные своего приложения со всеми необходимыми файлами.
Давайте перейдем в каталог ostechnixApp
и посмотрим, что там.
cd ostechnixApp/
ls
Program.cs obj ostechnixApp.csproj
У вас есть три файла с именами ostechnixApp.csproj
и Program.cs
и один каталог с именем <.объект. По умолчанию файл Program.cs будет содержать код для запуска программы 'Hello World
' в консоли. Давайте посмотрим на код.
$ cat Program.cs
// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");
Чтобы запустить вновь созданное приложение, просто выполните следующую команду:
$ dotnet run
Hello, World!
Запустите программу Hello World с помощью Dotnet
Просто, не так ли? Да, это! Теперь вы можете написать свой код в файле Program.cs
и запустить его, как показано выше.
Альтернативно вы можете создать новый каталог, например mycode
, используя команды:
mkdir ~/.mycode
cd mycode/
... и сделайте это своей новой средой разработки, выполнив следующую команду:
dotnet new console
Пример вывода:
The template "Console Application" was created successfully.
Processing post-creation actions...
Running 'dotnet restore' on /home/ostechnix/mycode/mycode.csproj...
Restoring packages for /home/ostechnix/mycode/mycode.csproj...
Generating MSBuild file /home/ostechnix/mycode/obj/mycode.csproj.nuget.g.props.
Generating MSBuild file /home/ostechnix/mycode/obj/mycode.csproj.nuget.g.targets.
Restore completed in 331.87 ms for /home/ostechnix/mycode/mycode.csproj.
Restore succeeded.
Приведенная выше команда создаст два файла с именами mycode.csproj
и Program.cs
и один каталог с именем . объект
. Откройте файл Program.cs
в своем любимом редакторе, удалите или измените существующий код «hello world
», добавив свой собственный код.
После написания кода сохраните и закройте файл Program.cs
и запустите приложение с помощью команды:
dotnet run
4. Установите редактор кода Microsoft Visual Studio.
Для написания кода вы можете использовать любимые редакторы по вашему выбору. У Microsoft также есть собственный редактор под названием «Microsoft Visual Studio Code» с поддержкой .NET.
Visual Studio Code — это легкий и мощный редактор исходного кода с открытым исходным кодом. Он поставляется со встроенной поддержкой JavaScript, TypeScript и Node.js и имеет богатую экосистему расширений для других языков (таких как C++, C#, Python, PHP, Go) и сред выполнения (таких как .NET и Unity).
Это кроссплатформенный редактор кода, поэтому вы можете использовать его в Microsoft Windows, GNU/Linux и Mac OS X. Вы можете использовать его, если вам интересно.
Чтобы узнать, как установить и использовать его в Linux, обратитесь к следующему руководству.
- Установить код Microsoft Visual Studio в Linux
На этой странице представлены базовые руководства по изучению инструментов .NET Core и .NET Core SDK с использованием редактора кода Visual Studio. Идите и проверьте их, чтобы узнать больше.
5. Телеметрия
По умолчанию пакет SDK .NET Core собирает данные об использовании с помощью функции Телеметрия. Собранные данные являются анонимными и передаются команде разработчиков и сообществу в соответствии с лицензией Creative Commons Attribution License. Таким образом, команда .NET поймет, как используются инструменты, и решит, как их можно улучшить с течением времени.
Если вы не хотите делиться информацией об использовании, вы можете просто отказаться от телеметрии, установив для переменной среды DOTNET_CLI_TELEMETRY_OPTOUT
значение '1
' или 'true
', используя вашу любимую оболочку.
И это все. Теперь вы знаете, как установить .NET Core SDK на различных платформах Linux и как создать с его помощью базовое приложение. Чтобы узнать больше об использовании .NET, посетите официальный сайт, указанный ниже.
Ресурс:
- Основной веб-сайт .NET