การเข้าถึง
เว็บไซต์อินเทอร์เฟส: https://<SERVER_IP>
จุดสิ้นสุด API: https://<SERVER_IP>:5004
ข้อมูล admin เริ่มต้น:
- อีเมล:
[email protected] - รหัสผ่าน:
1234
เปลี่ยนรหัสผ่านและชื่อผู้ใช้ของผู้ดูแลระบบทันทีหลังจากเข้าสู่ระบบครั้งแรก
ประกาศเกี่ยวกับใบรับรองที่ลงนามด้วยตนเอง
การติดตั้งนี้ใช้ใบรับรอง TLS แบบ self-signed
คาดว่าจะมีคำเตือนจากเบราว์เซอร์ SSL
สำหรับการเรียก API โดยใช้ curl, คุณต้องปิดการตรวจสอบใบรับรอง:
curl -k https://<SERVER_IP>:5004
ค่า -k แฟล็ก flag บอกให้ curl ข้ามการตรวจสอบใบรับรอง
ตัวอย่างการรับ token API:
curl -k https://<SERVER_IP>:5004/api/v1/auth/login
-H "Content-Type: application/json"
-d '{"email":"[email protected]","password":"1234"}'
คำสั่งนี้จะคืนค่าเป็น response แบบ JSON ที่มี token อยู่ด้วย
ตัวอย่างการรับ token API:
curl -k -i https://<SERVER_IP>:5004/api/v1/<VALID_ENDPOINT>
-H "Authorization: Bearer <TOKEN>"
สำหรับสภาพแวดล้อม production ให้เปลี่ยน self-signed certificate เป็น certificate ที่น่าเชื่อถือ (เช่น Let's Encrypt)
ไฟล์และไดเรกทอรีสำคัญ
- ไดเรกทอรี่การติดตั้ง:
/root/peppermint - ตัวแปรสภาพแวดล้อม (ข้อมูลเข้าถึง DB, ค่า secret, BASE_URL):
/root/peppermint/.env - การกำหนดค่า Docker Compose:
/root/peppermint/docker-compose.yml - ข้อมูลถาวร PostgreSQL (volume ของ Docker):
/var/lib/docker/volumes/pgdata/_data - การตั้งค่า reverse proxy สำหรับ NGINX:
/etc/nginx/conf.d/peppermint-client.conf&/etc/nginx/conf.d/peppermint-api.conf - ใบรับรอง TLS (แบบ self-signed หรือ Let's Encrypt):
/etc/nginx/ssl/
เปิดใช้งาน SSL พร้อมโดเมน
1. ชี้โดเมนของคุณไปที่ IP ของเซิร์ฟเวอร์
2. แก้ไขไฟล์ /root/peppermint/.env ไฟล์สำหรับตั้งค่าชื่อโดเมนของคุณ: BASE_URL=https://your.domain.com
3. สร้างบริการใหม่:
cd /root/peppermint/
docker compose up -d
4. แก้ไขการตั้งค่า Nginx และแทนที่ server_name <IP>; ด้วยโดเมนของคุณ (<your-domain>) สำหรับทั้งบล็อก HTTP (port 80) และ HTTPS (port 443):
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
๕. ติดตั้ง Certbot:
apt install -y certbot python3-certbot-nginx
6. รันคำสั่งต่อไปนี้เพื่อสร้าง Let's Encrypt certificate ที่ถูกต้อง:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. แทนที่พาธ SSL ในการตั้งค่า Nginx (ส่วน 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. รีสตาร์ท Nginx เพื่อใช้การเปลี่ยนแปลง:
systemctl restart nginx
9. เปิดเบราว์เซอร์และเข้าไปที่: https://yourdomain.com