рекомендации

понедельник, 25 февраля 2019 г.

Установка Microsoft .NET Core SDK в Linux

Ядро .NET поддерживает GNU/Linux, Mac OS и Windows. Ядро .Net может быть установлено в популярных операционных системах GNU/Linux, включая Debian, Fedora, CentOS, Oracle Linux, RHEL, SUSE / openSUSE и Ubuntu. На момент написания данного руководства последняя версия ядра .NET была 2.2.

В Debian 9 вы можете установить .NET Core SDK, как показано ниже.

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

$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
$ sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
$ wget -q https://packages.microsoft.com/config/debian/9/prod.list
$ sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
$ sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
$ sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list

После регистрации ключа и добавления репозитория установите .NET SDK с помощью команд:

$ sudo apt-get update
$ sudo apt-get install dotnet-sdk-2.2

В Debian 8:

Добавьте ключ Microsoft и включите репозиторий .NET:

$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
$ sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
$ wget -q https://packages.microsoft.com/config/debian/8/prod.list
$ sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
$ sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
$ sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list

Установите .NET SDK:

$ sudo apt-get update
$ sudo apt-get install dotnet-sdk-2.2

В Fedora 28:

Добавьте ключ Microsoft и включите репозиторий .NET:

$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ wget -q https://packages.microsoft.com/config/fedora/27/prod.repo
$ sudo mv prod.repo /etc/yum.repos.d/microsoft-prod.repo
$ sudo chown root:root /etc/yum.repos.d/microsoft-prod.repo

Теперь установите .NET SDK:

$ sudo dnf update
$ sudo dnf install dotnet-sdk-2.2

В Fedora 27 добавьте ключ и репозиторий с помощью команд:

$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ wget -q https://packages.microsoft.com/config/fedora/27/prod.repo
$ sudo mv prod.repo /etc/yum.repos.d/microsoft-prod.repo
$ sudo chown root:root /etc/yum.repos.d/microsoft-prod.repo

И установите .NET SDK с помощью команд:

$ sudo dnf update
$ sudo dnf install dotnet-sdk-2.2

В CentOS/Oracle Linux:

Добавьте ключ Microsoft и включите репозиторий .NET core:

$ sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm

Обновите репозитории и установите .NET SDK:

$ sudo yum update
$ sudo yum install dotnet-sdk-2.2

В openSUSE Leap:

$ sudo zypper install libicu
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ wget -q https://packages.microsoft.com/config/opensuse/42.2/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-2.2

В Ubuntu 18.04 LTS:

Зарегистрируйте ключ Microsoft и репозиторий .NET core с помощью команд:

$ wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb

Включите репозиторий «Universe», используя команду:

$ sudo add-apt-repository universe

Затем установите .NET Core SDK:

$ sudo apt-get install apt-transport-https
$sudo apt-get update
$ sudo apt-get install dotnet-sdk-2.2

Создайте свое первое приложение

Мы успешно установили .Net Core SDK в наш дистрибутив Linux. Настало время создать наше первое приложение, используя dotnet.

Для целей данного руководства я собираюсь создать новое приложение под названием «ostechnixApp». Для этого просто выполните следующую команду:

$ dotnet new console -o ostechnixApp

Пример вывода:

Welcome to .NET Core!
---------------------
Learn more about .NET Core: https://aka.ms/dotnet-docs
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli-docs

Telemetry
---------
The .NET Core tools collect usage data in order to help us improve your experience. The data is anonymous and doesn't include command-line arguments. The data is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.

Read more about .NET Core CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry

ASP.NET Core
------------
Successfully installed the ASP.NET Core HTTPS Development Certificate.
To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only). For establishing trust on other platforms refer to the platform specific documentation.
For more information on configuring HTTPS see https://go.microsoft.com/fwlink/?linkid=848054.
Getting ready...
The template "Console Application" was created successfully.

Processing post-creation actions...
Running 'dotnet restore' on ostechnixApp/ostechnixApp.csproj...
Restoring packages for /home/sk/ostechnixApp/ostechnixApp.csproj...
Generating MSBuild file /home/sk/ostechnixApp/obj/ostechnixApp.csproj.nuget.g.props.
Generating MSBuild file /home/sk/ostechnixApp/obj/ostechnixApp.csproj.nuget.g.targets.
Restore completed in 894.27 ms for /home/sk/ostechnixApp/ostechnixApp.csproj.

Как видно из вышеприведенного вывода, .Net создал новое приложение типа console. Параметр -o создает каталог с именем «ostechnixApp», в котором вы храните данные своего приложения со всеми необходимыми файлами.

Давайте перейдем в каталог ostechnixApp и посмотрим, что там.

$ cd ostechnixApp/
$ ls
obj ostechnixApp.csproj Program.cs

В вашем распоряжении три файла с именем ostechnixApp.csproj и Program.cs и один каталог с именем obj. По умолчанию файл Program.cs будет содержать код для запуска программы «Hello World» в консоли. Давайте посмотрим на код.

$ cat Program.cs 
using System;

namespace ostechnixApp
{
     class Program
     {
       static void Main(string[] args)
       {
         Console.WriteLine("Hello World!");
       }
   }
}

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

$ dotnet run
Hello World!


Просто, не правда ли?  Теперь вы можете написать свой код в файле 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/sk/mycode/mycode.csproj...
Restoring packages for /home/sk/mycode/mycode.csproj...
Generating MSBuild file /home/sk/mycode/obj/mycode.csproj.nuget.g.props.
Generating MSBuild file /home/sk/mycode/obj/mycode.csproj.nuget.g.targets.
Restore completed in 331.87 ms for /home/sk/mycode/mycode.csproj.

Restore succeeded.

Приведенная выше команда создаст два файла с именем mycode.csproj и Program.cs и один каталог с именем obj. Откройте файл Program.cs в своем любимом редакторе, удалите или замените существующий код «hello world» на собственный код.

После написания кода сохраните и закройте файл Program.cs и запустите приложение с помощью команды:

$ dotnet run

Чтобы проверить установленную версию .NET core SDK, просто запустите:

$ dotnet --version
2.2.101

Для вывода справки:

$ dotnet --help

Telemetry

По умолчанию .NET core SDK собирает данные об использовании с помощью функции «Telemetry». Собранные данные являются анонимными и передаются команде разработчиков и сообществу в соответствии с лицензией Creative Commons Attribution. Таким образом, команда .NET поймет, как используются инструменты, и решит, как их можно улучшить с течением времени. Если вы не хотите делиться информацией об использовании, вы можете просто отказаться от телеметрии, установив для переменной среды DOTNET_CLI_TELEMETRY_OPTOUT значение «1» или «true», используя вашу любимую оболочку.

Источник

Комментариев нет:

Отправить комментарий