Configure network isolation: use npm_public for proxy access
All checks were successful
Deploy to Production / deploy (push) Successful in 4s

This commit is contained in:
2026-02-15 21:04:58 +01:00
parent ae9d643980
commit 2c6b1ad966
3 changed files with 80 additions and 13 deletions

View File

@@ -12,18 +12,20 @@ Każdy push do gałęzi `main` automatycznie:
2. Zatrzymuje i usuwa stare kontenery.
3. Buduje i uruchamia nową wersję aplikacji przy użyciu `docker compose up -d --build`.
### Konfiguracja Nginx Proxy Manager
### Konfiguracja Sieci i Bezpieczeństwa (Izolacja)
Aplikacja nie wystawia publicznie żadnych portów. Komunikacja odbywa się wewnątrz sieci Dockerowej `npm_default`.
Aplikacja wykorzystuje dwie sieci dockerowe dla zapewnienia izolacji:
1. `npm_public` (zewnętrzna): Sieć, w której znajduje się Nginx Proxy Manager. Tylko kontener `rubic-cube` jest do niej podłączony, aby NPM mógł przekierować ruch.
2. `rubic-net` (wewnętrzna): Prywatna sieć aplikacji. Wszelkie inne serwisy (np. baza danych, redis - jeśli dodasz w przyszłości) powinny być tylko w tej sieci, niewidoczne dla NPM ani innych aplikacji.
W panelu Nginx Proxy Manager skonfiguruj Proxy Host:
* **Scheme:** `http`
* **Forward Hostname / IP:** `rubic-cube` (nazwa serwisu z docker-compose)
* **Forward Port:** `80`
* **Network:** Upewnij się, że Nginx Proxy Manager jest w sieci `npm_default`.
**Uwaga:** Przed pierwszym uruchomieniem upewnij się, że sieć `npm_default` istnieje na serwerze:
**Wymagania:**
Przed uruchomieniem upewnij się, że na serwerze istnieje sieć publiczna dla proxy:
```bash
docker network create npm_default
docker network create npm_public
```
(lub użyj nazwy sieci, w której znajduje się Twój kontener Nginx Proxy Managera).
(Jeśli Twój Nginx Proxy Manager używa innej sieci, zaktualizuj nazwę w `docker-compose.yml`).
W panelu Nginx Proxy Manager skonfiguruj:
* **Network:** `npm_public` (lub odpowiednia sieć proxy).
* **Forward Hostname:** `rubic-cube`
* **Forward Port:** `80`