All checks were successful
deploy / deploy (push) Successful in 2m34s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
39 lines
1.4 KiB
Markdown
39 lines
1.4 KiB
Markdown
# Wdrożenie — videodownloader.naurecki.pl
|
|
|
|
## Pipeline
|
|
Push do `main` uruchamia `.gitea/workflows/deploy.yml` na runnerze Gitea
|
|
(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
|
|
`127.0.0.1:8086`, `api` (NestJS) wewnętrznie + diagnostycznie na `127.0.0.1:3105`.
|
|
|
|
## Reverse proxy (Apache) — jednorazowo na serwerze
|
|
Plik `/etc/apache2/sites-available/videodownloader.naurecki.pl.conf`:
|
|
|
|
```apache
|
|
<VirtualHost *:80>
|
|
ServerName videodownloader.naurecki.pl
|
|
ProxyPreserveHost On
|
|
ProxyRequests Off
|
|
# SSE (log na żywo) wymaga flushowania pakietów
|
|
ProxyPass / http://127.0.0.1:8086/ flushpackets=on
|
|
ProxyPassReverse / http://127.0.0.1:8086/
|
|
ErrorLog ${APACHE_LOG_DIR}/videodownloader-error.log
|
|
CustomLog ${APACHE_LOG_DIR}/videodownloader-access.log combined
|
|
</VirtualHost>
|
|
```
|
|
|
|
Aktywacja + SSL (Let's Encrypt):
|
|
```bash
|
|
sudo a2enmod proxy proxy_http
|
|
sudo a2ensite videodownloader.naurecki.pl
|
|
sudo apache2ctl configtest && sudo systemctl reload apache2
|
|
sudo certbot --apache -d videodownloader.naurecki.pl --redirect -n \
|
|
--agree-tos -m dariusz@naurecki.pl
|
|
```
|
|
|
|
DNS: `*.naurecki.pl` (wildcard) już wskazuje serwer — bez dodatkowej konfiguracji.
|
|
|
|
## Tryb testowy (opcjonalny banner)
|
|
Ustaw zmienne repozytorium w Gitei (Settings → Actions → Variables):
|
|
`TRIAL_ENABLED=1`, `TRIAL_DAYS_LEFT=60`, `TRIAL_EXPIRES=2026-08-27`.
|