GNU/Linux >> Linux Esercitazione >  >> Linux

Provare .NET Core su Linux con solo un tarball (senza apt-get)

C'è un ottimo post sul blog .NET sui folli miglioramenti delle prestazioni in .NET Core che sono finiti su Hacker News. Il commento in alto su HN è un ottimo commento che sottolinea che il sito Web http://dot.net potrebbe essere più semplice, che potrebbe essere un one-pager con un'esperienza introduttiva più chiara.

Hanno anche detto questo:

Inoltre, avere un semplice .tar.gz scaricabile che si espande in /bin + /lib + /examples. Ho amato C# ai tempi di Windows e sono passato a Linux per sfuggire alle complessità Microsoft e all'eccessiva dipendenza da IDE e strumenti complessi, sparsi come schegge su tutto il mio c:/

Non correrò apt-get contro il tuo repo senza sapere in anticipo cosa sto ottenendo e dove andrà a finire, quindi fammi giocare prima con il tarball.

Questo è un ottimo punto e nelle prossime settimane esamineremo il rinnovamento e la semplificazione di http://dot.net/core con questo in mente. Stanno dicendo che le istruzioni di Linux, come queste istruzioni sull'installazione di .NET Core su Ubuntu, ad esempio, ti fanno fidare di una riproduzione apt di terze parti e apt-get .NET, mentre vogliono un'opzione più non vincolante. Questo arriva al punto più ampio "il sito web sta diventando più grande di quanto dovrebbe essere e confonde".

Prova di .NET Core da un tarball

Vai su https://www.microsoft.com/net/download/linux e scarica il file .tar.gz per la tua distribuzione in una bella area locale.

NOTA: Potrebbe essere necessario apt-get install libunwind8 se viene visualizzato un errore come "Impossibile caricare /home/ubuntu/teste-dotnet-rc2/libcoreclr.so, errore:libunwind.so.8:impossibile aprire il file oggetto condiviso :Nessun file o directory di questo tipo" ma libunwind non è molto controverso.

Dopo averlo decompresso/tar'd in una cartella locale, assicurati di eseguire dotnet da quella cartella.

Desktop $ mkdir dotnetlinux
Desktop $ cd dotnetlinux/
dotnetlinux $ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial
dotnetlinux $ curl -o dotnet.tar.gz https://download.microsoft.com/download/E/7/8/E782433E-7737-4E6C-BFBF-290A0A81C3D7/dotnet-dev-ub
untu.16.04-x64.1.0.4.tar.gz
dotnetlinux $ tar -xvf dotnet.tar.gz
dotnetlinux $ cd /mnt/c/Users/scott/Desktop/localdotnettest/
localdotnettest $ ../dotnetlinux/dotnet new console
Content generation time: 103.842 ms
The template "Console Application" created successfully.
localdotnettest $ ../dotnetlinux/dotnet restore
Restoring packages for /mnt/c/Users/scott/Desktop/localdotnettest/localdotnettest.csproj...
localdotnettest $ ../dotnetlinux/dotnet run
Hello World!

Non ci sono campioni in questo file tar (ancora) ma ci sono (alcuni deboli) campioni su https://github.com/dotnet/core/tree/master/samples puoi clonare https://github.com/dotnet /core.git ed eseguili da campioni. Nota dal ReadMe che https://github.com/dotnet/core è il punto di partenza per gli altri repository.

I "campioni" più interessanti sono i modelli che hai a disposizione da "dotnet new".

localdotnettest $ /mnt/c/Users/scott/Desktop/dotnetlinux/dotnet new
*SNIP*

Templates Short Name Language Tags
----------------------------------------------------------------------
Console Application console [C#], F# Common/Console
Class library classlib [C#], F# Common/Library
Unit Test Project mstest [C#], F# Test/MSTest
xUnit Test Project xunit [C#], F# Test/xUnit
ASP.NET Core Empty web [C#] Web/Empty
ASP.NET Core Web App mvc [C#], F# Web/MVC
ASP.NET Core Web API webapi [C#] Web/WebAPI
Solution File sln Solution

Examples:
dotnet new mvc --auth None --framework netcoreapp1.1
dotnet new classlib
dotnet new --help

Da qui puoi "dotnet new web" o "dotnet new console" usando la tua dotnet locale prima di decidere di eseguire l'installazione di .NET Core da un repository apt o yum o altro.

Sponsor: Dai un'occhiata a Seq:semplice registrazione centralizzata, sulla tua infrastruttura, con ottimo supporto per ASP.NET Core e Serilog. Scarica la versione 4.0.

Linux
  1. Cosa c'è di sbagliato in linux/if.h e net/if.h?

  2. C'è F# Interactive per Linux in .NET Core, senza usare Mono?

  3. .NET core X509Store su Linux

  4. DotNet Core 2.1 accumula memoria in Linux

  5. Distribuzione Linux con solo busybox e bash?

15 Il comando Tar in Linux utilizza con esempi

Come installare Microsoft .NET Core SDK su Linux

Esplorazione di ASP.NET Core con Docker in entrambi i contenitori Linux e Windows

Pubblicazione di un sito Web ASP.NET Core su un host di macchine virtuali Linux economico

Come installare (.NET Core) Dotnet Core nelle distribuzioni Linux

Come compilare l'app .NET Core per Linux in un computer Windows