Konfigurowanie środowisk projektowych za pomocą pliku .servbay.config
Wprowadzenie
ServBay to zaawansowane narzędzie do lokalnego tworzenia środowisk webowych, pozwalające deweloperom na indywidualną konfigurację środowiska uruchomieniowego dla każdego projektu. Kluczową funkcją jest obsługa pliku .servbay.config
, który można utworzyć w katalogu danego projektu.
Dzięki plikowi .servbay.config
łatwo określisz, które wersje PHP, Node.js, Pythona, Go, Javy czy innych języków mają być używane w ramach danego projektu, a także skonfigurujesz menedżery pakietów Node.js (np. NPM lub Yarn), ustalisz adresy repozytoriów czy lokalizacje pamięci podręcznej. Tak szczegółowa, projektowa kontrola znacznie zwiększa efektywność i wygodę pracy, zapewnia stabilne działanie każdego projektu we właściwym środowisku i eliminuje konflikty wersji.
Jak działa plik .servbay.config
?
Gdy ServBay uruchamia lub przeładowuje stronę, sprawdza, czy w katalogu głównym projektu znajduje się plik .servbay.config
. Jeśli tak, aplikacja odczytuje zawarte w nim ustawienia i stosuje je do środowiska danego projektu. Konfiguracje projektowe mają pierwszeństwo przed globalnymi ustawieniami ServBay. Jeśli pliku nie ma lub brakuje niektórych wpisów, ServBay korzysta z ustawień globalnych.
To rozwiązanie umożliwia łatwe przełączanie się między projektami — każdy z nich ma zawsze odpowiednio dopasowane środowisko.
Tworzenie i konfigurowanie pliku .servbay.config
Stworzenie i skonfigurowanie pliku .servbay.config
jest bardzo proste.
Lokalizacja pliku
Utwórz plik o nazwie .servbay.config
w głównym katalogu swojego projektu. Najczęściej jest to ścieżka, w której ServBay przechowuje strony, np. /Applications/ServBay/www/nazwa-twojego-projektu/
.
Składnia konfiguracji
Plik .servbay.config
korzysta z prostej składni typu KLUCZ=WARTOŚĆ
, gdzie każda linia to osobna konfiguracja. Do dodawania komentarzy służy znak #
, co poprawia czytelność pliku.
Przykład konfiguracji
Oto przykładowa zawartość pliku .servbay.config
, pokazująca konfigurację różnych wersji środowisk i ustawień menedżerów pakietów:
bash
# Przykładowy plik .servbay.config
# Określa wersję PHP. Upewnij się, że ta wersja jest zainstalowana w ServBay.
PHP_VERSION=8.5
# Określa wersję Node.js. Upewnij się, że ta wersja jest zainstalowana w ServBay.
NODE_VERSION=20
# Konfiguruje adres repozytorium Yarn, by przyspieszyć pobieranie zależności.
YARN_CONFIG_REGISTRY=https://npmreg.proxy.ustclug.org/
# Konfiguruje adres repozytorium NPM, by przyspieszyć pobieranie zależności.
NPM_CONFIG_REGISTRY=https://npmreg.proxy.ustclug.org/
# Określa lokalizację pamięci podręcznej NPM. Uwaga: ścieżka względem katalogu instalacyjnego ServBay.
NPM_CONFIG_CACHE=/Applications/ServBay/tmp/npm/cache
# Określa lokalizację pamięci podręcznej Yarn. Uwaga: ścieżka względem katalogu instalacyjnego ServBay.
YARN_CONFIG_CACHE=/Applications/ServBay/tmp/yarn/cache
# Określa wersję Ruby. Upewnij się, że ta wersja jest zainstalowana w ServBay.
RUBY_VERSION=2.7
# Określa wersję Java (OpenJDK). Upewnij się, że ta wersja jest zainstalowana w ServBay.
JAVA_VERSION=21
# Określa wersję Pythona. Upewnij się, że ta wersja jest zainstalowana w ServBay.
PYTHON_VERSION=3.11
# Określa wersję .NET. Upewnij się, że ta wersja jest zainstalowana w ServBay.
DOTNET_VERSION=5.0
# Określa wersję Go. Upewnij się, że ta wersja jest zainstalowana w ServBay.
GO_VERSION=1.12
# Konfiguruje proxy dla modułów Go, by przyspieszyć pobieranie.
GOPROXY=https://goproxy.cn,direct
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Uwaga: Przykładowe numery wersji (PHP_VERSION=8.5
, NODE_VERSION=20
itd.) są jedynie poglądowe. W praktyce wpisz wartości odpowiadające Twoim wymaganiom projektowym oraz wersjom zainstalowanym i obsługiwanym przez ServBay. W przypadku wskazania wersji, która nie jest zainstalowana, ServBay może użyć wersji domyślnej lub wyświetlić błąd.
Jakie typy opcji konfiguracji są wspierane?
Bazując na powyższym przykładzie, plik .servbay.config
obsługuje przede wszystkim następujące typy ustawień:
Określenie wersji środowisk:
PHP_VERSION
: wersja PHPNODE_VERSION
: wersja Node.jsRUBY_VERSION
: wersja RubyJAVA_VERSION
: wersja Java (OpenJDK)PYTHON_VERSION
: wersja PythonDOTNET_VERSION
: wersja .NETGO_VERSION
: wersja Go- (Szczegółowy wykaz obsługiwanych środowisk i odpowiadających im kluczy znajdziesz w dokumentacji ServBay lub w aplikacji.)
Konfiguracja menedżerów pakietów (Node.js):
YARN_CONFIG_REGISTRY
: adres repozytorium YarnNPM_CONFIG_REGISTRY
: adres repozytorium NPMNPM_CONFIG_CACHE
: ścieżka do lokalnej pamięci podręcznej NPMYARN_CONFIG_CACHE
: ścieżka do lokalnej pamięci podręcznej Yarn
Konfiguracja proxy dla modułów Go:
GOPROXY
: adres proxy dla modułów Go
Dzięki tym opcjom możesz dla każdego projektu zdefiniować niezależne środowisko, co eliminuje wzajemne wpływanie różnych konfiguracji na siebie.
Praktyczne zastosowanie i weryfikacja konfiguracji
Po skonfigurowaniu pliku .servbay.config
upewnij się, że Twój projekt został załadowany w ServBay (czyli pojawił się na liście „Strony” aplikacji). Każde uruchomienie lub przeładowanie strony powoduje odczytanie konfiguracji projektu.
Aby zweryfikować, czy konfiguracja działa:
Sprawdź w interfejsie ServBay: W szczegółach witryny lub w odpowiednich widokach ServBay można zobaczyć aktualnie wybrane wersje środowisk dla projektu.
Sprawdź w terminalu: Uruchom terminal ServBay i upewnij się, że jesteś w głównym katalogu projektu, a następnie wpisz odpowiednie polecenia, np.:
- Sprawdź wersję PHP:
php -v
- Sprawdź wersję Node.js:
node -v
- Sprawdź wersję Yarn:
yarn -v
- Sprawdź wersję NPM:
npm -v
- Sprawdź wersję Pythona:
python -V
lubpython3 -V
- Sprawdź wersję Go:
go version
- Sprawdź wersję Java:
java -version
- Sprawdź wersję .NET:
dotnet --version
- Sprawdź wersję Ruby:
ruby -v
Porównaj wyjście poleceń z wartościami określonymi w.servbay.config
.
- Sprawdź wersję PHP:
Sprawdzenie w przeglądarce (dla PHP): Utwórz plik PHP (np.
info.php
) w katalogu głównym projektu o treści<?php phpinfo(); ?>
. Otwórz go przez przeglądarkę (np.http://twoj-projekt.servbay.demo/info.php
) i sprawdź w wygenerowanymphpinfo
, czy wersja PHP odpowiada zadanej.
Poniższa ilustracja pokazuje przykładowy widok aplikacji ServBay z aktywną konfiguracją projektową:
(Konkretne działanie i wygląd interfejsów należy sprawdzić na aktualnej wersji aplikacji ServBay.)
Wskazówki i uwagi
- Nazwa pliku
.servbay.config
musi być dokładna — nie może być literówek. - Plik musi znajdować się w katalogu głównym projektu.
- Wersje wskazane w pliku muszą być zainstalowane i obsługiwane przez ServBay.
- Każda konfiguracja powinna być w osobnej linii w formacie
KLUCZ=WARTOŚĆ
. - Błędy składniowe mogą sprawić, że ServBay zignoruje cały plik lub niektóre ustawienia.
- Ustawienia z
.servbay.config
mają wyższy priorytet niż globalne i dotyczą tylko bieżącego projektu.
Najczęściej zadawane pytania (FAQ)
Q: Co jeśli w katalogu mojego projektu nie ma pliku .servbay.config
?
A: Jeśli go nie utworzysz, ServBay uruchomi projekt na podstawie domyślnych/globalnych ustawień skonfigurowanych w aplikacji.
Q: Co się stanie, jeśli w pliku wskażę wersję środowiska, której nie ma w ServBay?
A: ServBay zgłosi błąd. Szczegóły zależą od wersji aplikacji i konfiguracji. Zanim ustawisz wersję w pliku, upewnij się, że jest ona zainstalowana przez aplikację ServBay.
Q: Czy po zmianie .servbay.config
muszę restartować program ServBay?
A: Zwykle wystarczy ponownie załadować lub zatrzymać i uruchomić witrynę w aplikacji, bez konieczności pełnego restartu ServBay.
Q: Czy ustawienia z .servbay.config
wpływają na inne projekty?
A: Nie. Każdy plik .servbay.config
działa tylko na katalog, w którym się znajduje, i dotyczy wyłącznie przypisanej do niego strony w ServBay.
Podsumowanie
Plik .servbay.config
zapewnia deweloperom ServBay potężne możliwości zarządzania środowiskami na poziomie projektu. Niezależnie od tego, czy pracujesz nad starszym projektem wymagającym określonej wersji technologii, czy rozwijasz nowoczesne aplikacje na bieżącym stosie, dzięki temu plikowi szybko dopasujesz i odseparujesz środowisko, co przekłada się na większą elastyczność i wydajność pracy. Skorzystaj z tej funkcjonalności, aby Twój lokalny workflow był jeszcze bardziej płynny!