Bạn đang tìm kiếm một giải pháp tự lưu trữ để quản lý hồ sơ y tế cá nhân mà không phụ thuộc vào dịch vụ đám mây của bên thứ ba? MediKeep chính là ứng dụng mã nguồn mở, nhẹ nhàng, cho phép bạn kiểm soát toàn bộ dữ liệu sức khỏe của mình trên chính máy chủ của bạn. Với React và FastAPI, MediKeep giúp bạn theo dõi thuốc men, tạo báo cáo và bảo mật thông tin tuyệt đối.
Thank you for reading this post, don't forget to subscribe!Những điểm chính
- MediKeep là ứng dụng web tự lưu trữ giúp bạn làm chủ dữ liệu y tế cá nhân, không cần gửi lên máy chủ bên ngoài.
- Hỗ trợ theo dõi thuốc (liều lượng, lịch trình), tạo báo cáo sức khỏe và xuất dữ liệu cho bác sĩ.
- Triển khai dễ dàng bằng Docker Compose, tích hợp sẵn cơ chế backup/restore và SSO (Google, GitHub).
- Mã nguồn mở, miễn phí, phù hợp cho cá nhân hoặc gia đình muốn quản lý hồ sơ sức khỏe tập trung.
MediKeep là gì và giải quyết vấn đề gì?

MediKeep là một ứng dụng web tự lưu trữ, ra đời với tên gọi cũ Personal-Medical-Records-Keeper, cho phép bạn quản lý toàn bộ thông tin y tế cá nhân ngay trên máy chủ của mình. Vấn đề lớn nhất mà MediKeep giải quyết chính là quyền riêng tư và khả năng kiểm soát dữ liệu sức khỏe: thay vì tin tưởng các dịch vụ đám mây thương mại, bạn giữ mọi hồ sơ, đơn thuốc và lịch sử điều trị trong tầm tay, không lo rò rỉ hay bị khai thác trái phép. Ứng dụng được xây dựng với công nghệ hiện đại (React cho giao diện, FastAPI cho backend), triển khai qua Docker Compose, giúp ngay cả người không chuyên sâu cũng có thể dựng lên trong vài phút. Lưu ý dự án vừa đổi tên từ Personal-Medical-Records-Keeper sang MediKeep, kéo theo thay đổi về tên Docker image và container; nếu bạn đang dùng phiên bản cũ cần cập nhật cấu hình để tránh gián đoạn. Bạn có thể xem chi tiết tại repo MediKeep trên GitHub.
MediKeep có những tính năng nổi bật nào?

MediKeep mang đến bảng điều khiển trực quan tổng quan hồ sơ sức khỏe, trình theo dõi thuốc chi tiết, công cụ tạo báo cáo xuất dữ liệu, và khả năng đăng nhập một lần (SSO) qua Google, GitHub hay các nhà cung cấp OIDC. Tính năng sao lưu/phục hồi qua giao diện quản trị hoặc dòng lệnh giúp bạn yên tâm không mất dữ liệu, đồng thời dự án vẫn đang được cập nhật thường xuyên để hoàn thiện thêm.
Bảng điều khiển (Dashboard)
Trang tổng quan hiển thị các hoạt động gần đây và tóm tắt dữ liệu y tế, cho bạn cái nhìn toàn cảnh nhanh chóng ngay khi đăng nhập.
Theo dõi thuốc (Medications)
Theo dõi tất cả các loại thuốc, liều lượng và lịch trình một cách khoa học, giúp tránh quên uống thuốc hoặc uống sai giờ – cực kỳ hữu ích với người bệnh mạn tính hoặc người lớn tuổi.
Trình tạo báo cáo (Report Builder)
Xây dựng báo cáo y tế tùy chỉnh, xuất dữ liệu để dễ dàng chia sẻ với bác sĩ hoặc chuyên gia chăm sóc sức khỏe khi thăm khám, giảm thiểu việc kê khai lại bằng giấy.
SSO và bảo mật nâng cao
Hỗ trợ đăng nhập qua Google, GitHub và sắp tới là các nhà cung cấp OIDC (Keycloak, Auth0) giúp quản lý tài khoản tập trung. Tất cả xác thực thông qua JWT, kết hợp với tùy chọn bật HTTPS để bảo vệ dữ liệu trên đường truyền.
Sao lưu & phục hồi linh hoạt
Ứng dụng cho phép sao lưu ngay trong bảng quản trị, đồng thời cung cấp CLI để bạn nhanh chóng thiết lập cron job sao lưu định kỳ. Backups được lưu trong volume app_backups, có thể ánh xạ ra ổ cứng ngoài để an toàn tối đa.
Làm sao để tự cài đặt MediKeep với Docker Compose?

Chỉ cần máy chủ đã cài Docker và Docker Compose, bạn có thể triển khai MediKeep chưa đầy 10 phút. Dưới đây là các bước chi tiết dựa theo hướng dẫn chính thức từ repo.
- Cài đặt Docker và Docker Compose (nếu chưa có).
- Tạo file
docker-compose.ymlvới nội dung từ repo gốc (bạn có thể sao chép nguyên mẫu từ trang GitHub). Tệp này định nghĩa hai service: PostgreSQL database và combined app (React+FastAPI). - Tạo file
.envđặt cùng thư mục, khai báo các biến bắt buộc:DB_PASSWORD,SECRET_KEY(dùng để ký JWT, nếu không đặt session sẽ là tạm thời),APP_PORT=8005, múi giờTZ, và các biến tùy chọn nhưDEBUG,ENABLE_API_DOCS(bật Swagger),ENABLE_SSL. - Mở terminal, di chuyển đến thư mục chứa hai file trên, chạy lệnh
docker compose up -d. Lưu ý không dùngdocker-compose(phiên bản cũ). - Kiểm tra container đã chạy bằng
docker ps, sau đó truy cậphttp://localhost:8005để mở ứng dụng. Nếu bạn đã kích hoạt SSL và có chứng chỉ trong thư mụccerts, app sẽ tự động phục vụ HTTPS.
Tài khoản admin mặc định: admin / admin123. Bạn nên đổi mật khẩu ngay sau lần đăng nhập đầu tiên, hoặc dùng biến ADMIN_DEFAULT_PASSWORD để đặt mật khẩu khác cho lần cài mới (chỉ áp dụng khi tạo user admin lần đầu).
Ai nên dùng — ai không nên dùng — MediKeep?

MediKeep là lựa chọn tuyệt vời cho những cá nhân coi trọng quyền riêng tư dữ liệu sức khỏe, những người tự host dịch vụ trên máy chủ gia đình (homelab) hoặc VPS riêng. Người mắc bệnh mạn tính cần theo dõi thuốc thường xuyên, gia đình muốn lưu trữ hồ sơ cho nhiều thành viên sẽ thấy ứng dụng này cực kỳ thiết thực. Ngược lại, nếu bạn ưu tiên một ứng dụng di động có sẵn trên App Store/Google Play, hoặc cần tích hợp sâu với hệ thống bệnh viện điện tử, MediKeep ở thời điểm hiện tại vẫn là ứng dụng web thuần và chưa có những connector đó. Đây cũng là dự án đang được phát triển tích cực, nên có thể thiếu một vài tính năng nâng cao so với giải pháp thương mại – nhưng bù lại bạn có toàn quyền kiểm soát và tùy chỉnh mã nguồn.
Câu hỏi thường gặp
MediKeep có miễn phí không?
Có, MediKeep là phần mềm mã nguồn mở hoàn toàn miễn phí. Bạn có thể tải về, sửa đổi và tự triển khai trên máy chủ của mình mà không mất bất kỳ chi phí bản quyền nào.
Tôi có cần biết lập trình để cài đặt MediKeep không?
Bạn không cần kỹ năng lập trình chuyên sâu, chỉ cần hiểu cơ bản về dòng lệnh, Docker và soạn thảo file YAML. Hướng dẫn từng bước của dự án được viết rất dễ hiểu, giúp bạn triển khai thành công ngay cả khi chưa từng làm việc với container.
Dữ liệu y tế của tôi được lưu trữ ở đâu?
Toàn bộ dữ liệu nằm trong cơ sở dữ liệu PostgreSQL chạy trên máy chủ của bạn, cùng các file upload lưu trong volume Docker. Như vậy không một byte thông tin nào rời khỏi hạ tầng bạn kiểm soát.
MediKeep có hỗ trợ đăng nhập bằng tài khoản Google không?
Có, tính năng SSO của MediKeep hỗ trợ đăng nhập qua Google và GitHub (đã kiểm thử), cũng như các nhà cung cấp OIDC khác. Bạn chỉ cần kích hoạt biến môi trường tương ứng trong file .env theo hướng dẫn SSO Quick Start của dự án.
Làm sao để sao lưu dữ liệu MediKeep?
Bạn có thể sao lưu thủ công qua trang Admin Dashboard hoặc dùng CLI đi kèm. Kết hợp với cron job, bạn hoàn toàn tự động hóa việc sao lưu định kỳ, lưu ra volume app_backups để dễ dàng phục hồi khi cần.
Kết luận
MediKeep mang đến giải pháp tự lưu trữ hồ sơ y tế cá nhân đáng tin cậy, trao cho bạn toàn quyền kiểm soát dữ liệu nhạy cảm nhất của bản thân. Với cộng đồng mã nguồn mở và kiến trúc Docker đơn giản, đây là lựa chọn phù hợp để bạn hoặc gia đình bắt đầu xây dựng một tủ thuốc số an toàn, riêng tư. Hãy ghé thăm repo MediKeep để thả sao, theo dõi dự án và bắt đầu hành trình làm chủ hồ sơ sức khỏe của bạn ngay hôm nay.

