Dostęp
Interfejs sieciowy: https://<SERVER_IP>
Punkt końcowy interfejsu API: https://<SERVER_IP>:5004
Domyślne poświadczenia administratora:
- E-mail:
[email protected] - Hasło:
1234
Zmień dane uwierzytelniające administratora natychmiast po pierwszym logowaniu.
Powiadomienie o certyfikacie z podpisem własnym
Ta instalacja korzysta z certyfikatu TLS z podpisem własnym.
Oczekiwane jest ostrzeżenie dotyczące protokołu SSL przeglądarki.
W przypadku wywołań API przy użyciu curl, musisz zignorować sprawdzanie poprawności certyfikatu:
curl -k https://<SERVER_IP>:5004
The -k flaga mówi curlowi, aby pominął weryfikację certyfikatu TLS.
Przykład uzyskania tokena API:
curl -k https://<SERVER_IP>:5004/api/v1/auth/login
-H "Content-Type: application/json"
-d '{"email":"[email protected]","password":"1234"}'
Zwraca to odpowiedź JSON zawierającą token.
Przykład uzyskania tokena API:
curl -k -i https://<SERVER_IP>:5004/api/v1/<VALID_ENDPOINT>
-H "Authorization: Bearer <TOKEN>"
W środowiskach produkcyjnych zastąp certyfikat z podpisem własnym zaufanym certyfikatem SSL (np. Let’s Encrypt).
Ważne pliki i katalogi
- Katalog instalacji:
/root/peppermint - Zmienne środowiskowe (poświadczenia bazy danych, sekrety, BASE_URL):
/root/peppermint/.env - Konfiguracja Docker Compose:
/root/peppermint/docker-compose.yml - Trwałe dane PostgreSQL (wolumin Dockera):
/var/lib/docker/volumes/pgdata/_data - Konfiguracje odwrotnego proxy Nginx:
/etc/nginx/conf.d/peppermint-client.conf&/etc/nginx/conf.d/peppermint-api.conf - Certyfikaty TLS (samopodpisane lub Let’s Encrypt):
/etc/nginx/ssl/
Włączanie SSL z domeną
1. Skieruj swoją domenę na IP serwera.
2. Edytuj /root/peppermint/.env plik, aby ustawić nazwę domeny: BASE_URL=https://your.domain.com
3. Utwórz ponownie usługi:
cd /root/peppermint/
docker compose up -d
4. Edytuj konfiguracje Nginx i zamień server_name <IP>; z Twoją domeną (<your-domain>) dla bloków HTTP (port 80) i HTTPS (port 443):
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
5. Zainstaluj Certbota:
apt install -y certbot python3-certbot-nginx
6. Uruchom następujące polecenie, aby wygenerować ważny certyfikat Let’s Encrypt:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. Zamień ścieżki SSL w konfiguracji Nginx (sekcja TLS):
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
8. Uruchom ponownie Nginx, aby zastosować zmiany:
systemctl restart nginx
9. Otwórz przeglądarkę i odwiedź: https://yourdomain.com