Mengakses
Antarmuka web: https://<SERVER_IP>
Titik akhir API: https://<SERVER_IP>:5004
Kredensial admin bawaan:
- E-mail:
[email protected] - Kata sandi:
1234
Ubah kredensial admin segera setelah login pertama.
Pemberitahuan Sertifikat yang Ditandatangani Sendiri
Instalasi ini menggunakan sertifikat TLS yang ditandatangani sendiri.
Peringatan SSL browser diharapkan terjadi.
Untuk panggilan API menggunakan curl, Anda harus mengabaikan validasi sertifikat:
curl -k https://<SERVER_IP>:5004
Itu -k bendera memberitahu curl untuk melewati verifikasi sertifikat TLS.
Contoh untuk mendapatkan token API:
curl -k https://<SERVER_IP>:5004/api/v1/auth/login
-H "Content-Type: application/json"
-d '{"email":"[email protected]","password":"1234"}'
Ini mengembalikan respons JSON yang berisi token.
Contoh untuk mendapatkan token API:
curl -k -i https://<SERVER_IP>:5004/api/v1/<VALID_ENDPOINT>
-H "Authorization: Bearer <TOKEN>"
Untuk lingkungan produksi, ganti sertifikat yang ditandatangani sendiri dengan sertifikat SSL tepercaya (misalnya, Let’s Encrypt).
File dan Direktori Penting
- Direktori install:
/root/peppermint - Variabel lingkungan (kredensial DB, rahasia, BASE_URL):
/root/peppermint/.env - Konfigurasi Docker Tulis:
/root/peppermint/docker-compose.yml - Data persisten PostgreSQL (volume Docker):
/var/lib/docker/volumes/pgdata/_data - Konfigurasi proksi terbalik Nginx:
/etc/nginx/conf.d/peppermint-client.conf&/etc/nginx/conf.d/peppermint-api.conf - Sertifikat TLS (ditandatangani sendiri atau Let's Encrypt):
/etc/nginx/ssl/
Mengaktifkan SSL dengan Domain
1. Arahkan domain kamu ke IP server.
2. Mengedit /root/peppermint/.env file untuk mengatur nama domain Anda: BASE_URL=https://your.domain.com
3. Buat ulang layanan:
cd /root/peppermint/
docker compose up -d
4. Edit konfigurasi Nginx dan ganti server_name <IP>; dengan domainmu (<your-domain>) untuk blok HTTP (port 80) dan HTTPS (port 443):
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
5. Instal Certbot:
apt install -y certbot python3-certbot-nginx
6. Jalankan perintah berikut untuk membuat sertifikat Let’s Encrypt yang valid:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. Ganti path SSL pada konfigurasi Nginx (bagian 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. Restart Nginx untuk menerapkan perubahan:
systemctl restart nginx
9. Buka browser kamu dan kunjungi: https://yourdomain.com