fix: port web 8085 zajety na hoscie -> 8086
All checks were successful
deploy / deploy (push) Successful in 2m34s
All checks were successful
deploy / deploy (push) Successful in 2m34s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
Push do `main` uruchamia `.gitea/workflows/deploy.yml` na runnerze Gitea
|
Push do `main` uruchamia `.gitea/workflows/deploy.yml` na runnerze Gitea
|
||||||
(z zamontowanym `docker.sock`). Runner buduje obrazy z `docker-compose.prod.yml`
|
(z zamontowanym `docker.sock`). Runner buduje obrazy z `docker-compose.prod.yml`
|
||||||
i robi `up -d` na demonie Dockera serwera. Serwis `web` (nginx) słucha na
|
i robi `up -d` na demonie Dockera serwera. Serwis `web` (nginx) słucha na
|
||||||
`127.0.0.1:8085`, `api` (NestJS) wewnętrznie + diagnostycznie na `127.0.0.1:3105`.
|
`127.0.0.1:8086`, `api` (NestJS) wewnętrznie + diagnostycznie na `127.0.0.1:3105`.
|
||||||
|
|
||||||
## Reverse proxy (Apache) — jednorazowo na serwerze
|
## Reverse proxy (Apache) — jednorazowo na serwerze
|
||||||
Plik `/etc/apache2/sites-available/videodownloader.naurecki.pl.conf`:
|
Plik `/etc/apache2/sites-available/videodownloader.naurecki.pl.conf`:
|
||||||
@@ -15,8 +15,8 @@ Plik `/etc/apache2/sites-available/videodownloader.naurecki.pl.conf`:
|
|||||||
ProxyPreserveHost On
|
ProxyPreserveHost On
|
||||||
ProxyRequests Off
|
ProxyRequests Off
|
||||||
# SSE (log na żywo) wymaga flushowania pakietów
|
# SSE (log na żywo) wymaga flushowania pakietów
|
||||||
ProxyPass / http://127.0.0.1:8085/ flushpackets=on
|
ProxyPass / http://127.0.0.1:8086/ flushpackets=on
|
||||||
ProxyPassReverse / http://127.0.0.1:8085/
|
ProxyPassReverse / http://127.0.0.1:8086/
|
||||||
ErrorLog ${APACHE_LOG_DIR}/videodownloader-error.log
|
ErrorLog ${APACHE_LOG_DIR}/videodownloader-error.log
|
||||||
CustomLog ${APACHE_LOG_DIR}/videodownloader-access.log combined
|
CustomLog ${APACHE_LOG_DIR}/videodownloader-access.log combined
|
||||||
</VirtualHost>
|
</VirtualHost>
|
||||||
|
|||||||
@@ -52,9 +52,9 @@ Dokument zawiera (1) gotowy **prompt** do wygenerowania aplikacji od zera oraz
|
|||||||
| 2 | **Backend** | NestJS: moduły `jobs`, `ytdlp`, `health`; SSE; STOP; ZIP playlist. |
|
| 2 | **Backend** | NestJS: moduły `jobs`, `ytdlp`, `health`; SSE; STOP; ZIP playlist. |
|
||||||
| 3 | **Frontend** | React+Vite, UI ze zrzutu, klient SSE do panelu Log. |
|
| 3 | **Frontend** | React+Vite, UI ze zrzutu, klient SSE do panelu Log. |
|
||||||
| 4 | **Docker** | `apps/api/Dockerfile` (node+yt-dlp+ffmpeg), `apps/web/Dockerfile` (nginx). |
|
| 4 | **Docker** | `apps/api/Dockerfile` (node+yt-dlp+ffmpeg), `apps/web/Dockerfile` (nginx). |
|
||||||
| 5 | **Compose** | `docker-compose.prod.yml`: `web` → `127.0.0.1:8085`, `api` wewnętrznie. |
|
| 5 | **Compose** | `docker-compose.prod.yml`: `web` → `127.0.0.1:8086`, `api` wewnętrznie. |
|
||||||
| 6 | **CI/CD** | `.gitea/workflows/deploy.yml`: push `main` → build + `up -d` (docker.sock). |
|
| 6 | **CI/CD** | `.gitea/workflows/deploy.yml`: push `main` → build + `up -d` (docker.sock). |
|
||||||
| 7 | **Reverse proxy** | vhost Apache `videodownloader.naurecki.pl` → `127.0.0.1:8085`. |
|
| 7 | **Reverse proxy** | vhost Apache `videodownloader.naurecki.pl` → `127.0.0.1:8086`. |
|
||||||
| 8 | **SSL** | `certbot --apache -d videodownloader.naurecki.pl`. |
|
| 8 | **SSL** | `certbot --apache -d videodownloader.naurecki.pl`. |
|
||||||
| 9 | **DNS** | Gotowe — `*.naurecki.pl` (wildcard) już wskazuje `212.109.167.206`. |
|
| 9 | **DNS** | Gotowe — `*.naurecki.pl` (wildcard) już wskazuje `212.109.167.206`. |
|
||||||
| 10 | **Weryfikacja** | `https://videodownloader.naurecki.pl` + test pobrania. |
|
| 10 | **Weryfikacja** | `https://videodownloader.naurecki.pl` + test pobrania. |
|
||||||
@@ -62,5 +62,5 @@ Dokument zawiera (1) gotowy **prompt** do wygenerowania aplikacji od zera oraz
|
|||||||
**Ustalenia infrastrukturalne** (zweryfikowane na serwerze):
|
**Ustalenia infrastrukturalne** (zweryfikowane na serwerze):
|
||||||
- Serwer `naurecki.pl` (= `mail.naurecki.pl`, `212.109.167.206`): Apache + certbot,
|
- Serwer `naurecki.pl` (= `mail.naurecki.pl`, `212.109.167.206`): Apache + certbot,
|
||||||
aktywny `gitea-runner` z zamontowanym `docker.sock`.
|
aktywny `gitea-runner` z zamontowanym `docker.sock`.
|
||||||
- Wolny port loopback: **8085**.
|
- Wolny port loopback: **8086**.
|
||||||
- Wzorzec deployu zgodny z istniejącym projektem `gdziebts`.
|
- Wzorzec deployu zgodny z istniejącym projektem `gdziebts`.
|
||||||
|
|||||||
@@ -24,11 +24,11 @@ videodownloader/
|
|||||||
│ ├── src/
|
│ ├── src/
|
||||||
│ ├── nginx.conf # serwuje statyki + proxy /api (+ SSE bez buforowania)
|
│ ├── nginx.conf # serwuje statyki + proxy /api (+ SSE bez buforowania)
|
||||||
│ └── Dockerfile
|
│ └── Dockerfile
|
||||||
├── docker-compose.prod.yml # web → 127.0.0.1:8085, api wewnętrznie
|
├── docker-compose.prod.yml # web → 127.0.0.1:8086, api wewnętrznie
|
||||||
└── .gitea/workflows/deploy.yml
|
└── .gitea/workflows/deploy.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
Ruch publiczny: `Apache (vhost videodownloader.naurecki.pl, SSL)` → `127.0.0.1:8085`
|
Ruch publiczny: `Apache (vhost videodownloader.naurecki.pl, SSL)` → `127.0.0.1:8086`
|
||||||
(kontener **web**, nginx) → statyki React + proxy `/api` → kontener **api** (NestJS).
|
(kontener **web**, nginx) → statyki React + proxy `/api` → kontener **api** (NestJS).
|
||||||
|
|
||||||
## Funkcje (odwzorowane ze zrzutu desktopowego)
|
## Funkcje (odwzorowane ze zrzutu desktopowego)
|
||||||
|
|||||||
@@ -31,6 +31,6 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
depends_on:
|
depends_on:
|
||||||
- api
|
- api
|
||||||
# publiczny ruch (HTML + statyki + /api) wchodzi tu; reverse proxy hosta → 8085
|
# publiczny ruch (HTML + statyki + /api) wchodzi tu; reverse proxy hosta → 8086
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:8085:80"
|
- "127.0.0.1:8086:80"
|
||||||
|
|||||||
Reference in New Issue
Block a user