Jak zainstalować Serverless Framework?


Serverless logo

Jeśli się zastanawiasz dlaczego Kurs Severless zaczynamy od instalacji frameworka to odsyłam Cię do tego artykułu, gdzie tłumaczę swoją decyzję o wyborze tego narzędzia.
Skoro ten wstęp mamy już za sobą to myślę, że możemy zaczynać :-)

Serverless Framework

Jest narzędziem napisanym w JavaScript uruchamianym przez Node.js. W związku z tym będziemy potrzebowali zainstalować node oraz npm. Poniżej opis instalacji na trzy popularne platformy Windows (10), Linux (Ubuntu) oraz Mac.

Ten artykuł jest częścią większego cyklu: Kurs Serverless

Na cały cykl składają się następujące artykuły. Jeśli jesteś tutaj pierwszy raz, to dobrze będzie zacząć od początku smile
  1. Jak zainstalować Serverless Framework?
  2. Jak skonfigurować AWS CLI?
  3. Pierwsza funkcja Lambda
  4. Jak stworzyć usługę sieciową (webserwis) za pomocą AWS Lambda?
  5. "Śledź Paczkę" - wideokurs serverless

Instalacja w Windows

Normalną procedurą byłoby pobranie instalki Node.js ze strony https://nodejs.org/en/download/ i zainstalowanie oprogramowania.

Ja natomiast preferuje inne, bardziej wszechstronne rozwiązanie. Od paru lat z powodzeniem używam Chocolatey - czyli opensourcowego menadżera pakietów dla Windows. Instalując choco mamy łatwy dostęp do tysięcy aplikacji i programów prosto z linii komend. Instalujemy je podobnie jak ma to miejsce w linuxie, a do tego w większości wypadków “zainstalowane” zostają wersje portable aplikacji, co skutecznie zapobiega zaśmiecaniu rejestru naszego Windowsa.

Chcolately instalujemy zgodnie z instrukcjami na stornie https://chocolatey.org/.

  1. Uruchamiamy linie poleceń (cmd.exe) w trybie administratora.

  2. Następnie uruchamiamy:

    1
    @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
  3. Gdy już mamy choco możemy zainstalować nvm

    1
    C:\>choco install nvm -y
  4. Odświeżamy zmienne środowiskowe za pomocą polecenia

    1
    C:\>refreshenv
  5. Za pomocą Node Version Managera instalujemy Node.js wraz z Node Package Manager:

    1
    C:\>nvm install 8.10.0

Uwaga: Wybrałem tutaj starszą wersję niż najnowsza. AWS Lambda używa tej wersji i ze względu na różnice pomiędzy wersjami Node.js najwygodniej dla Ciebie będzie używać tej samej wersji lokalnie w dewelopmencie. Prywatnie używam trochę nowszej 8.11.3 i nie zauważyłem żadnych problemów.

  1. Wybieramy tę wersję jako domyślną

    1
    C:\>nvm use 8.10.0
  2. Teraz powinniśmy mieć do dyspozycji w linii komend dwa polecenia: node oraz npm.

    1
    2
    3
    4
    5
    C:\>node -v
    v8.10.0

    C:\>npm -v
    5.6.0
  3. Teraz możemy zainstalować Serverless Framework za pomocą npm czyli Node Package Manager. Parametr -g instaluje pakiet globalnie, czyli umożliwia uruchomienie go z dowolnego katalogu w systemie (dodaje do PATH).

    1
    npm install -g serverless
  4. W wyniku tej operacji będziemy mieli dostęp do kolejnego polecenia serverless, które dla wygody posiada swój krótszy alias: sls.

    1
    2
    3
    4
    5
    C:\>serverless -v
    1.36.0

    C:\>sls -v
    1.36.0

Przy okazji, jeśli jeszcze nie masz gita na swojej maszynie to polecam jego instalację przez choco (znów cmd jako administrator):

1
choco install git -params "/GitAndUnixToolsOnPath" -y

Dzięki czemu poza samym gitem zdobędziemy również bardzo podstawowe komendy linuxowe m.in. cat, rm, tail, ls. W repozytorium Chocolatey znajdziecie też vima oraz mc. W ten oto sposób możemy łatwo doposażyć ubogą windowsową konsolę.

Instalacja na Linux

Na Ubuntu 18.04 (ale pewnie też na innych dystrybucjach) instalacja Node.js najwygodniejsza jest za pomocą NVM, czyli Node Version Managera. Jest to lepsze rozwiązanie niż użycie apt ponieważ będziemy mieli dostęp do nowszej wersji npm.

  1. Rozpoczynamy od

    1
    $ wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
  2. Następnie musimy przeładować zmienne w shellu.

    1
    $ source ~/.profile
  3. Teraz możemy sprawdzić czy nvm działa:

    1
    2
    $ nvm --version
    0.33.8
  4. Instalujemy node oraz npm jedną komendą

    1
    $ nvm install 8.10.0
  5. Teraz mamy już wszystko:

    1
    2
    3
    4
    $ node -v
    v8.10.0
    $ npm -v
    5.6.0
  6. Teraz npmem instalujemy Serverless Framework (tak samo jak na każdej innej platformie)

    1
    $ npm install -g serverless

Źródło: https://linuxconfig.org/how-to-install-node-js-on-ubuntu-18-04-bionic-beaver-linux

Instalacja na Macu

Dysponuje macOS Sierra ale zakładam, że na każdym wygląda to tak samo. Podobnie jak na innych platformach instalujemy Node Version Managera. Zainstalowanie Node.js bezpośrednio skutkowało na mojej maszynie problemami z instalacją globalnych pakietów przez npm.

  1. Do instalacji wykorzystamy brew czyli kolejny pakiet menadżer. Wykonaj po kolei następujące komendy:

    1
    2
    3
    brew update
    brew install nvm
    mkdir ~/.nvm
  2. Teraz należy wyedytować plik .bash_profile w katalogu użytkownika np za pomocą polecenia nano ~/.bash_profile i wkleić poniższe ustawienia:

    1
    2
    export NVM_DIR=~/.nvm
    source $(brew --prefix nvm)/nvm.sh
  3. Następnie musimy przeładować zmienne w shellu.

    1
    source ~/.bash_profile
  4. Ostatnim krokiem jest instalacja node oraz npm jedną komendą:

    1
    $ nvm install 8.10.0

Źródło: http://dev.topheman.com/install-nvm-with-homebrew-to-use-multiple-versions-of-node-and-iojs-easily/

Dziękuję i zapraszam do następnej lekcji.
Miłego dnia!



Cześć

Nazywam się Paweł Zubkiewicz i cieszę się, że tu jesteś!
Od ponad 13 lat profesjonalnie tworzę oprogramowanie, a od 2016 roku pasjonuje się Serverless.
Tą stronę stworzyłem z myślą o Tobie i o nas wszystkich, którzy uważają, że trend serverless trwale zmieni sposób tworzenia oprogramowania.
Więcej o tej stronie...

Kategorie

Pobierz bezpłatny PDF

Poradnik 12 Rzeczy o Serverless

Wybrane artykuły