[.NET CORE] Instalacja na Ubuntu

Microsoft dumnie obwieszcza wsparcie dla Linuxów, ja nie dawno powiedziałem sprawdzam i postanowiłem zweryfikować jak zadziała self-hostowany serwer TCP opublikowany na Ubuntu 18 Server.

Ubuntu Serwer działa na platformie Azure, klasyczna instalacja dotnet’a w wersji Core powinna wyglądać dość prosto:

Dodajemy wymagane repozytoria i zależności:

Używamy tutaj niskopoziomowej komendy dpkg gdyż pkiet packages-microsoft-rpod nie znajduje się w ogólnodostępnym repozytorium aby wystarczyło skorzystać z apt-get.

Następnie instalujemy apt-transport-httpsaby wszystkie menedżery pakietów, które korzystają z biblioteki libapt-pkg, mogły uzyskać dostęp do metadanych i pakietów z dostępnych źródeł za pośrednictwem protokołu HTTPS.

Następnie (w końcu!) dotnet SDK:

Po tym zabiegu dotnet jest już dostępny na naszym Linuxie, aby to zweryfikować wpisujemy w konsoli:

Powinniśmy otrzymać informacje o wersji dotneta w naszym OS. Jesli Linux poinformuje nas, że nie zna polecenia dotnet – mamy problem. Instalacja się nie powiodła. 🙁

Trudne przypadki

U mnie – niestety – właśnie tak było, za Chiny nie mogłem zainstalować zależności wymaganych przez dotnet-sdk, jedynym rozwiązaniem (mimo spędzenia naprawdę sporego czasu na szukaniu rozwiązania) była ręczna instalacja dotnet’a i dodanie go do ścieżek systemowych.

Robimy to tak:

  1. Zaczyny od pobrania binariów odpowiedniej wersji dotneta – ja wybrałem .
    Można pobrać pliki dowolną metodą i umieścić na systemie plików Ubuntu  lub skorzystać z wget:

2. Tworzymy folder dla dotnet’a.

Zachęcam do przypomnienia sobie przeznaczenia poszczególnych katalogów w Linuxie, np. na tej stronie.

Przeznaczenie folderów w Linuxach

3. Wypakowujemy zawartość archiwum do nowo-utworzonego folderu:

4. Dodajemy ścieżki systemowe:

5. Niestety po restarcie ścieżki „ulecą”, aby je zachować należy:
– Edytujemy zatem pliki  ~/.bash_profile oraz, ~/.bashrc
Na końcu stałej PATH dodajemy naszą ścieżkę, czyli /usr/dotnet
– Na końcu obu plików dodajemy komendę:  

Istnieje też możliwość działania z dotnetem bez dodawania go do ścieżek systemowych, ale za każdym razem musimy wtedy podawać pełną ścieżkę, czyli np.:

To tyle. Przekonajmy się, że .Net w Linuxie jest całkiem OK! 🙂

Dodaj komentarz

This site uses Akismet to reduce spam. Learn how your comment data is processed.