Jak zrobić deployment asp.net core api oraz reacta do folderu?

0

Chodzi mi o to że mam dwa foldery: ProjectWebAPI oraz webReactClient. I powiedzmy że api oraz react są już zakodowane.
No to w jaki sposób zrobić deployment do jednego głownego folderu z apki api oraz reacta?

edit:
Generalnie chodzi mi jak zrobić deployment wszystkiego do iis na serwerze zdalnym.
Jeśli chodzi o visual studio to luz, ale co z frontem (reactem) w takim razie.
No bo jego też muszę jakoś upakować.

edit2:
Ale ze mnie kretyn.

BUILD_PATH='../ProjectWebAPI/wwwroot' react-scripts build
0

Visual Studio ma gotowy template do projektu API + React i wszystko jest zawarte co trzeba, aby zrobić deploy. Po skończeniu wybierasz z menu u góry Build -> Publish <nazwa_projektu> -> Wybierasz opcje "Folder" -> Podajesz ścieżkę -> ustawiasz dodatkowe opcje o ile są potrzebne i klikasz guzik "Publish". Wszystko ci się zrobi tak jak powinno z folderem wwwroot, w którym jest twój reactowy front.

0
AdamWox napisał(a):

Visual Studio ma gotowy template do projektu API + React i wszystko jest zawarte co trzeba, aby zrobić deploy. Po skończeniu wybierasz z menu u góry Build -> Publish <nazwa_projektu> -> Wybierasz opcje "Folder" -> Podajesz ścieżkę -> ustawiasz dodatkowe opcje o ile są potrzebne i klikasz guzik "Publish". Wszystko ci się zrobi tak jak powinno z folderem wwwroot, w którym jest twój reactowy front.

@AdamWox: Tak, tylko problem polega na tym że ja zaktualizowałem moje vs2022c do najnowszego wczoraj i faktycznie tam
jest taka templatka, ale niestety gdy tworzę projekt to w oknie gdy tworzy się wszystko dostaję error "command not found" i
totalnie nie wiem o co chodzi. Ja chciałem taką templatkę zrobić, ale po prostu taki problem mam właśnie że projekt
nie chcę się zrobić. Co jest dziwne, bo aktualizacja zainstalowała się prawidłowo.

0

Jaki command not found? Jaka wersja VS? Preview?

0

@AdamWox: Znaczy sama templatka ma w nawiasie Preview? A sam VS to nie jestem pewny.
Po prostu miałem vs2022c którą po prostu zaktualizowałem przez przycisk "dzwonek" z prawej strony
u dołu vs.
Edit:
Ok, czekaj instaluję preview. Może to faktycznie to.

0

To działa w zwykłym. Nie instaluj Preview, bo tam mniej rzeczy działa. Zrób jeszcze raz template i wrzuć tutaj całą treść tego command not found

0

@AdamWox: No takie coś mi wyświetla, i to na zwykłym vs22c oraz vs22cpreview

image

1

Masz zainstalowane nodejs?

1

Mam. W końcu pozostałe projekty reactowe w vs mi się tworzą. Tylko może powinienem zaktualizować.
Sam nie wiem.

edit:
Moment, instaluję jeszcze raz Node'a ale tym razem ze wszystkimi toolsami. Znaczy tymi
rzeczami które się przez powershella instalują.
edit2:
Ok, już się zrobiło. Po prostu miałem Noda ale bez toolsów.
Zainstalowałem i się zrobiło jak potrzeba. Dzięki;-)

0

@AdamWox: W którym miejscu masz zakładkę BUILD? bo u mnie u góry nie ma. Tzn. ja sobie opublikowałem webapi ale po opublikowaniu nie mam w moim web api wwwroot'a.
Tzn. opublikowałem tak że najpierw dałem

npm run build z powershella w vs.

A potem dałem ppm na nazwie projektu "webapi" opublikuj do folderu. No i w owym folderze mam dll'e ale wwwroota nie widzę. Wwwroota nie mam też utworzonego w webapi.
Sorry, do tej pory siedziałem po prostu w mvc i jeszcze nie łączyłem reacta z asp.net core.

image

0

Masz po polsku. Sekcja Kompilowanie. Włącz jeszcze raz installer i zmień język na angielski.

Musisz wybrać odpowiedni typ projektu.
project_type.png

0

@AdamWox: A nie pomyliło Ci się nic? Ja myślałem że mam wybrać tę opcję:

image

1

Ja nie wiem co to jest to (Preview). Moim zdaniem oba projekty są tego samego typu i zwracają (prawie) to samo. Prawdopodobnie to co jest (Preview) jest w jakieś wersji beta. Może w .NET 8... Ja piszę w Angularze i ja zawsze wybieram opcję wyżej od tego co ci zaznaczyłem na czerwono (nie Preview).Ta opcja Preview jest od niedawna.

0

@AdamWox: Zabawne, update-database poszło na tym twoim i w przeglądarce mi wszystko działa.
Zaznaczam że uruchomiłem na apce dopiero utworzonej.
Jednak gdy usiłuję skompilować klienta reacta, to dostaję w powershellu vs
taki monit: failed to compile EBUSY resource busy or locked, rmdir "ścieżka z moją apką";-)))
A co kaman?

0

Co to znaczy "usiłuje skompilować reacta". Robiąc Publish wszystko ci się robi automatycznie, niczego nie kompilujesz ręcznie. Ja nie wiem co ty masz tam pomieszane. Zrobiłem dla testów projekt, wykonałem Publish do folderu i wszystko poszło jak trzeba 🤔😏

0

@AdamWox: A utworzyłeś z opcją "pojedyncze konto" czy bez?

0

Bez konta Jeśli chcesz opcje z kontem musisz podać poprawny connection string do bazy danych

0

@AdamWox: Hehe ... bez konta to i mnie się wszystko zrobiło. Natomiast co do connection string to przecież on się generuje automatycznie przy samym utworzeniu projektu, nie?
Po utworzeniu projektu dajesz update-database, baza się update'uje, i powinno się opublikować wszystko, hę?

edit:
Bo wcześniej dałem z opcją pojedynczne konta więc gdybym constr miał źle zapisane to update-database by się nie powiódł, raczej ..

0

W guglach piszą że trzeba powyłączać inne terminale. No to ja wyłączyłem terminale, zostawiłem tylko vs i wcześniej restart nawet zrobiłem
komputera i nic to nie pomogło. No to jak bez opcji pojedynczych kont się kompiluje a z opcją już nie??? Wcześniej myślałem że problemu
z tym nie ma, bo jeszcze nie publikowałem, tylko po prostu uruchamiałem w przeglądarce. I wtedy nawet konto mogłem sobie lokalnie założyć... jakieś tam.
A teraz gdy publikuję to w chwili buildowania reacta piszę mi ten monit co go wyżej podałem. ... znaczy failed to compile ...

1

Eeee;-)) Hehe, już mi zrobiło;-)) Wiecie o co chodziło? Po prostu przy publikowaniu określałem mój własny folder a trzeba było zostawić ten, który oni zapodają. Dziwne to, ale prawdopodobnie jakiś błąd popełniałem przy określaniu ścieżki .. czy coś.
Ale jak zostawiłem bin/Release/... to jest ok. Hehe, i nawet wwwroot'a faktycznie mam.
**
Tylko teraz się zastanawiam jak ogarnąć autoryzację, czyli role. Bo chyba nie robi się w przypadku z reactem tak jak to było w mvc, nie?
Jakoś się to chyba inaczej robi. Podpowiecie?

Edit:
Dobra sorry że takimi pierd... zawracam głowę. Coś już znalazłem.
Wrzucam. Może się komuś przyda.
https://jasonwatmore.com/post/2022/02/18/net-6-role-based-authorization-tutorial-with-example-api

1 użytkowników online, w tym zalogowanych: 0, gości: 1