Uruchamianie serwera deweloperskiego npm w tle w systemie Windows bez okna terminala
Serwer deweloperski uruchomiony poleceniem npm run dev działa w terminalu, który go uruchomił,
więc zamknięcie tego okna go kończy. Zwykły sposób w systemie Windows na utrzymanie go to
proces ukryty, na przykład Start-Process npm.cmd -ArgumentList "run","dev" -WindowStyle Hidden
w PowerShell, ale wtedy nie ma wyjścia do przeczytania, a zatrzymanie go oznacza szukanie
właściwego node.exe (zob.
Znajdowanie i kończenie procesu używającego portu).
Sposób Moonpool
Dział zatytułowany „Sposób Moonpool”Moonpool uruchamia polecenie we własnej wbudowanej karcie terminala w oknie huba, więc nie ma osobnego okna konsoli, które trzeba trzymać otwarte. Po ukryciu okna huba w zasobniku serwer nadal działa. Aplikację dodaje się raz:
{ "id": "site", "name": "Site", "group": "Web apps", "type": "web", "cwd": "C:\\code\\site", "command": "npm run dev", "port": 5173, "url": "http://localhost:5173", "openBrowser": true}Należy kliknąć kontrolkę Uruchom przy aplikacji. Kropka stanu staje się pełna, gdy port
zacznie odpowiadać, a przeglądarka otwiera url dzięki openBrowser. Kliknięcie nazwy aplikacji
pokazuje jej wyjście w jej własnej karcie. Zatrzymaj kończy terminal i wszystko, co uruchomił,
oraz zwalnia port (killMode port jest domyślny dla web).
Utrzymanie działania po zamknięciu okna
Dział zatytułowany „Utrzymanie działania po zamknięciu okna”Domyślnie przycisk zamknięcia kończy Moonpool, a w systemie Windows zakończenie programu zatrzymuje każdą uruchomioną przez niego aplikację. Włączenie Zamykanie do zasobnika w Ustawieniach sprawia, że zamknięcie okna tylko je ukrywa. Ikona w zasobniku (lub Pokaż Moonpool) przywraca okno. Szczegóły są w Zasobnik, zamykanie i minimalizowanie.
Przewidywalny port
Dział zatytułowany „Przewidywalny port”Moonpool ustala stan działania na podstawie port. Vite przechodzi na następny wolny port, gdy
jego port jest zajęty, co sprawiłoby, że Moonpool obserwowałby zły port. Należy przekazać
--strictPort, aby Vite zakończył działanie, i ustawić port odpowiednio:
npm run dev -- --port 5173 --strictPortJeśli port jest już zajęty, zob. Naprawa EADDRINUSE i „Port 5173 is in use”.
Ograniczenia
Dział zatytułowany „Ograniczenia”- Moonpool nie uruchamia ponownie serwera, który uległ awarii. Pokazuje aplikację jako
zatrzymaną, a karta wypisuje
[proces zakończony]. - Moonpool nie uruchamia się sam przy logowaniu do systemu Windows. Zob. Automatyczne uruchamianie skryptu lub serwera deweloperskiego przy logowaniu do systemu Windows.
Zobacz także
Dział zatytułowany „Zobacz także”- Pola aplikacji:
port,openBrowser,killMode. - Typy aplikacji: jak ustalany jest stan działania dla
web. - Zatrzymywanie i ponowne uruchamianie
- Przykłady
Moonpool to darmowe oprogramowanie od FasterDB