Document production login bootstrap flow
This commit is contained in:
@ -178,13 +178,105 @@ Catatan:
|
||||
- `seed:master` hanya mengisi data awal `grade`, `bank`, dan `currency`
|
||||
- user login production tetap harus dibuat terpisah, jangan mengandalkan akun dev/default
|
||||
|
||||
## 7. Build Production
|
||||
## 7. User Login Awal Production
|
||||
|
||||
Sistem login tidak punya user production bawaan permanen.
|
||||
|
||||
Di kode memang ada akun default, tetapi akun itu hanya dibuat jika:
|
||||
|
||||
```env
|
||||
AUTH_BOOTSTRAP=true
|
||||
```
|
||||
|
||||
Jika production langsung memakai:
|
||||
|
||||
```env
|
||||
AUTH_BOOTSTRAP=false
|
||||
```
|
||||
|
||||
maka akun login awal tidak akan ada.
|
||||
|
||||
### Opsi yang paling praktis: bootstrap sementara
|
||||
|
||||
1. Ubah `.env.production` sementara menjadi:
|
||||
|
||||
```env
|
||||
AUTH_BOOTSTRAP=true
|
||||
```
|
||||
|
||||
2. Build dan jalankan aplikasi:
|
||||
|
||||
```bash
|
||||
cd /var/www/abelbirdnest-web
|
||||
npm run build
|
||||
sudo systemctl restart abelbirdnest-web
|
||||
```
|
||||
|
||||
3. Login pertama kali lewat:
|
||||
|
||||
- web: `https://abelbirdnest.id/login`
|
||||
- API: `POST /api/v1/auth/login`
|
||||
|
||||
Identity bisa memakai `email` atau `username`.
|
||||
|
||||
4. Akun default yang akan tersedia saat bootstrap aktif:
|
||||
|
||||
- `admin` / `admin123`
|
||||
- `owner` / `owner123`
|
||||
- `purchasing` / `purchasing123`
|
||||
- `warehouse` / `warehouse123`
|
||||
- `qc` / `qc123`
|
||||
- `sales` / `sales123`
|
||||
|
||||
Email default:
|
||||
|
||||
- `admin@abelbirdnest.local`
|
||||
- `owner@abelbirdnest.local`
|
||||
- `purchasing@abelbirdnest.local`
|
||||
- `warehouse@abelbirdnest.local`
|
||||
- `qc@abelbirdnest.local`
|
||||
- `sales@abelbirdnest.local`
|
||||
|
||||
5. Setelah berhasil login, segera buat user production final dari menu `Users`.
|
||||
|
||||
Minimal disarankan:
|
||||
|
||||
- 1 user `SYSTEM_ADMIN` atau `ADMIN`
|
||||
- 1 user `OWNER`
|
||||
- user operasional sesuai kebutuhan: `PURCHASING`, `WAREHOUSE`, `QC`, `SALES`
|
||||
|
||||
6. Setelah user production final selesai dibuat dan sudah dites login:
|
||||
|
||||
- ubah lagi `.env.production` menjadi:
|
||||
|
||||
```env
|
||||
AUTH_BOOTSTRAP=false
|
||||
```
|
||||
|
||||
- restart service:
|
||||
|
||||
```bash
|
||||
sudo systemctl restart abelbirdnest-web
|
||||
```
|
||||
|
||||
7. Opsional tapi sangat disarankan:
|
||||
|
||||
- nonaktifkan atau hapus akun default bootstrap dari menu `Users`
|
||||
- ganti semua password default jika akun tersebut tetap dipertahankan sementara
|
||||
|
||||
### Catatan keamanan
|
||||
|
||||
- Jangan biarkan `AUTH_BOOTSTRAP=true` aktif terus di production.
|
||||
- Jangan gunakan password default untuk operasi harian.
|
||||
- Setelah bootstrap selesai, verifikasi bahwa login masih normal memakai user production yang baru dibuat.
|
||||
|
||||
## 8. Build Production
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
## 8. Jalankan App di Port 3007
|
||||
## 9. Jalankan App di Port 3007
|
||||
|
||||
Manual:
|
||||
|
||||
@ -216,7 +308,7 @@ Untuk verifikasi:
|
||||
sudo systemctl is-enabled abelbirdnest-web
|
||||
```
|
||||
|
||||
## 9. Reverse Proxy Nginx
|
||||
## 10. Reverse Proxy Nginx
|
||||
|
||||
Gunakan file:
|
||||
|
||||
@ -233,7 +325,7 @@ sudo nginx -t
|
||||
sudo systemctl reload nginx
|
||||
```
|
||||
|
||||
## 10. Health Check
|
||||
## 11. Health Check
|
||||
|
||||
Endpoint health:
|
||||
|
||||
@ -247,7 +339,7 @@ Contoh:
|
||||
curl https://abelbirdnest.id/api/v1/health
|
||||
```
|
||||
|
||||
## 11. Update Deployment Berikutnya
|
||||
## 12. Update Deployment Berikutnya
|
||||
|
||||
Jika aplikasi sudah live dan ada update dari git:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user