Wiki
Clone wikiASP.NET Web API / Konfiguracja Visual Studio Code
CoGotujo.pl - ASP.NET Core
Konfiguracja Visual Studio Code
Praca przy kodzie
Konfiguracja
By zacząć komfortowo pracować w VS Code potrzeba zainstalować następujące wtyczki:
Dodatkowo, w przypadku pracy na Linux następuje potrzeba dodać swojego użytkownika do grupy docker, by móc zarządzać kontenerami. W przeciwnym razie wtyczka docker nie będzie działać oraz skrypty testów jednostkowych. Poniższej sposób na rozwiązanie problemu:
#Create the docker group. sudo groupadd docker #Add your user to the docker group. sudo usermod -aG docker $USER
$USER
, to Twoja nazwa użytkownika. Jednak zapis przedstawiony powyżej powinien zadziałać (zmienna środowiskowa).
By wprowadzone zmiany zostały zastosowane należy zalogować się ponownie na swoje konto!
Przed uruchomieniem Visual Studio Code należy utworzyć dockerowy wolumin wydając następujące polecenie:
docker volume create --name cogotujodb --driver local
Uruchamianie debugowania
Po pierwsze zawsze korzystamy z funkcji Open folder i wybieramy folder projektu (tam gdzie jest plik *.csproj). W przeciwnym przypadku VS Code "nie widzi" projektu do debugowania. By uruchomić debugowanie należy przejść do zakładki z "bugiem" na pasku po lewej stronie:
Przygotowanie środowiska developerskiego - Docker
Przed rozpoczęciem debugowania należy jeszcze stworzyć potrzebne kontenery dla projektu (WebApplicationMVC). Do tego celu posłużymy się dodatkiem Docker:
- Należy wcisnąć kombinację klawiszy
Ctrl + P
. Pojawi nam się u góry "terminal VS Code". - Wpisujemy teraz w nim
>Docker:Compose up
. - Zostaniemy zapytani o konfigurację do wczytania. Jest tylko jedna, należy ją wybrać.
Po kilku sekundach mamy przygotowane środowisko developerskie. Jeśli wszystko przebiegło dobrze to powinieneś otrzymać następujący rezultat:
Debugowanie
Po lewej stronie, jak już wybrałeś odpowiednią zakładkę, na samej górze znajduje się zielona strzałeczka z napisem Debug Docker.
Wystarczy, że klikniesz w strzałeczkę i rozpocznie się debugowanie. Gdy aplikacja zostanie uruchomiona to otworzy się Tobie Twoja domyślna przeglądarka www z adresem pod którym dostępna jest aplikacja.
Do dzieła i udanej zabawy!
Ps: Jeśli chcesz lepiej zapoznać się z debugowaniem w VS Code to zapraszam do artykułu.
Zakończenie pracy
Przed zamknięciem VS Code zalecam zamknąć stworzone kontenery na potrzeby projektu (WebApplicationMVC). Przy wyłączeniu systemu operacyjnego także zostaną one wyłączone. Do tego celu posłużymy się dodatkiem Docker:
- Należy wcisnąć kombinację klawiszy
Ctrl + P
. Pojawi nam się u góry "terminal VS Code". - Wpisujemy teraz w nim
>Docker:Compose down
. - Zostaniemy zapytani o konfigurację do wczytania. Jest tylko jedna, należy ją wybrać.
Teraz to już wszystko co powinieneś wiedzieć o debugowaniu. Powodzenia
Jak uruchamiamy testy jednostkowe?
W projekcie UnitTests znajdują się dwa skrypty:
- RunUnitTests.bat (dla Windows)
- RunUnitTests.sh (dla Linux)
Uruchamiają one docker-compose.unit-tests.yml. To znaczy, tworzony jest kontener z bazą danych do testów oraz kontener zawierający dotnetcore sdk. Projekt testów jest automatycznie budowany oraz wykonywany. Jeśli jakiś test "nie przechodzi" wiadomość zwrotna wyświetla się w terminalu. Zawiera ona nazwę testu oraz numer linijki w pliku.
Napotkany błąd
Błąd "wypluwany" przez Kestrel w ramach braku certyfikatu https. By rozwiązać ten problem należy wygenerować certyfikat i podać go w konfiguracji docker image związanego z aplikacją.
Wygenenerowanie certyfikatu:
dotnet dev-certs https -v -ep ./obj/Docker/publish/cert-aspnetcore.pfx -p password
./obj/Docker/publish/cert-aspnetcore.pfx
- ścieżka wraz z nazwą dla nowego certyfikatu,-p password
- password to hasło używane z certyfikatem.
Konfiguracja docker-compose:
environment: - Kestrel__Certificates__Default__Path=/app/cert-aspnetcore.pfx - Kestrel__Certificates__Default__Password=password
Źródła:
Updated