# 5.1. Yêu cầu Hệ thống (Prerequisites)

Để đảm bảo hệ thống có thể biên dịch và chạy trơn tru, máy chủ / máy lập trình viên cần đáp ứng các điều kiện sau:

- **Môi trường Java:** Khuyến nghị sử dụng cài đặt **JDK 17**.
- **Trình quản lý gói:** **Maven** `3.8+` (Hoặc dùng file <span class="context-scope-mention"><span class="inline-flex items-center gap-0.5 rounded-md align-middle text-sm font-medium transition-[opacity,background-color] cursor-pointer hover:bg-gray-500/20 select-text translate-y-[-1px]" draggable="true"><span class="inline-flex break-all leading-tight">mvnw</span></span></span> cung cấp sẵn trong source code).
- **Môi trường Máy chủ (Web Service):** Linux/Windows Server đã cài đặt sẵn **Docker** và **Docker Compose**.
- **Môi trường Đóng gói (Desktop App):** Máy tính Windows để đóng gói JRE custom. Yêu cầu có cài đặt **WiX Toolset (v3.x)** nếu muốn build file cài dạng `.msi`.
- **Database &amp; Cache:** MSSQL Server (2016 trở lên) và Redis Server (Khuyến nghị Redis v7+).
- **Source code**: [http://192.168.0.95/nam/signing\_service\_tan\_cang.git](http://192.168.0.95/nam/signing_service_tan_cang.git) nhánh [dev\_namdh\_app\_signing\_desktop](http://192.168.0.95/nam/signing_service_tan_cang/-/tree/dev_namdh_app_signing_desktop)