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 là một lựa chọn mã nguồn mở để bạn làm điều đó: nó gói hồ sơ bệnh án, thông tin thuốc và báo cáo sức khỏe vào một ứng dụng web chạy trên máy chủ của bạn. Với giao diện React và backend FastAPI, bạn chỉ cần Docker là có thể bắt đầu.
Thank you for reading this post, don't forget to subscribe!Khác với các ứng dụng quản lý bệnh án thương mại thường đồng bộ dữ liệu lên đám mây, MediKeep được thiết kế theo hướng self-hosted. Bạn có thể đọc repo chính thức bên dưới, nhưng điểm quan trọng nhất rất rõ ràng: nếu không tự chia sẻ, không ai nhìn thấy dữ liệu của bạn.
MediKeep quản lý hồ sơ y tế cá nhân theo cách nào khi bạn không muốn dùng đám mây?
Thay vì gửi hồ sơ lên Google Drive hay Dropbox, MediKeep đưa toàn bộ health records vào hệ thống bạn tự vận hành: giao diện React, API FastAPI, PostgreSQL và các file đính kèm đều nằm trên máy chủ. Bạn có thể nhập conditions, visits, equipment và xuất báo cáo khi cần.
Nếu đã từng cài ứng dụng web tự lưu trữ để lưu video, tư duy của MediKeep cũng tương tự: dữ liệu nằm trong hạ tầng bạn kiểm soát. Điều này giúp phân biệt với Medical Records, nhóm ứng dụng quản lý hồ sơ trực tuyến thường đặt dữ liệu trên máy chủ nhà cung cấp. Với MediKeep, người dùng có thể tạo hồ sơ cho từng thành viên trong gia đình và dùng Report Builder để tổng hợp trước buổi khám.

Làm thế nào để theo dõi thuốc, nhắc lịch uống và xử lý tương tác thuốc?
MediKeep cho phép bạn nhập từng loại thuốc với đầy đủ dosage và lịch trình trong mục Medications. Dữ liệu này có thể xuất thành báo cáo, nhưng ứng dụng không tự quét drug interactions.
Nếu cần biết thuốc A có xung đột với thuốc B không, hãy dùng hệ thống tra cứu chuyên dụng hoặc hỏi dược sĩ. MediKeep không quét tương tác thuốc và cũng không đưa ra personalized drug dosing. Nó chỉ ghi lại liều bác sĩ đã kê, giúp bạn tránh sót thông tin khi khám lại.
Về reminders, ứng dụng hiển thị lịch trình dùng thuốc nhưng chưa có ứng dụng iOS chính thức. Trên iPhone, bạn có thể tạo reminder thủ công từ lịch đó để nhận cảnh báo đúng giờ. Cách này không lý tưởng bằng thông báo đẩy, nhưng giúp bạn không quên uống thuốc hằng ngày.

Dữ liệu y tế của bạn nằm ở đâu trong kiến trúc Docker của MediKeep?
File docker-compose.yml mặc định của dự án dùng 2 service là db và app. Service db chạy PostgreSQL, nơi lưu toàn bộ hồ sơ có cấu trúc. Service app chạy backend FastAPI và frontend React. Các file tải lên nằm trong volume Docker, còn backup được tạo trong volume app_backups.
PostgreSQL là lớp lưu trữ chính. Theo tài liệu chính thức của PostgreSQL, đây là hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở có độ tin cậy cao. Nếu cài trên Synology NAS, các volume này nằm trong thư mục Docker của DSM và có thể backup theo lịch bằng Hyper Backup.
Khi tạo backup, hãy ánh xạ volume app_backups ra một ổ cứng ngoài. Cách này giúp bạn phục hồi nhanh nếu ổ chính gặp sự cố.

Chạy MediKeep trên Docker Compose, Unraid, Synology NAS hay RepoCloud có phức tạp?
Không quá phức tạp nếu bạn hiểu Docker cơ bản. Bạn chỉ cần tạo một file docker-compose.yml và một file .env, sau đó chạy đúng một lệnh docker compose up -d. Các nền tảng Unraid, Synology NAS và RepoCloud đưa ra cách làm khác nhau, nhưng cùng dùng chung bộ file cấu hình của dự án.
| Nền tảng | Độ khó | Cách làm chính | Phù hợp với |
|---|---|---|---|
| Docker Compose | Trung bình | Chạy lệnh docker compose up -d sau khi điền file .env |
Người dùng VPS hoặc máy chủ Linux |
| Unraid | Thấp | Tạo container từ kho ứng dụng hoặc dùng tab Docker Compose | Chủ máy chủ gia đình |
| Synology NAS | Thấp | Dùng Container Manager để nhập stack docker-compose.yml |
Người đã có NAS và muốn lưu dữ liệu tại nhà |
| RepoCloud | Rất thấp | Chọn MediKeep và tạo instance trên giao diện web | Người muốn dùng thử nhanh trên cloud mà không tự cài Docker |
Quy trình nhanh nhất gồm 4 bước:
- Tạo thư mục rồi tải file
docker-compose.ymltừ repo MediKeep. - Điền file
.env:DB_PASSWORD,SECRET_KEY,APP_PORT=8005,TZ. - Chạy lệnh
docker compose up -d. - Mở trình duyệt tại
http://localhost:8005và đăng nhập bằng tài khoản admin mặc định.
Nếu đang dùng bản cũ Personal-Medical-Records-Keeper, hãy kiểm tra tên image trong file cấu hình. Bản MediKeep mới đổi tên Docker image và container nên bạn cần cập nhật, đồng thời giữ nguyên volume dữ liệu cũ để không mất hồ sơ.
Triển khai trên máy chủ gia đình (homelab) với Unraid sẽ giúp bạn quản lý container bằng giao diện thay vì dòng lệnh. Đây là lựa chọn phổ biến cho người muốn vừa lưu phim, vừa chạy ứng dụng y tế trên cùng một hệ thống.
Một số giới hạn cần biết trước khi dùng MediKeep trong thực tế
MediKeep không phải thiết bị y tế, chưa có ứng dụng iOS chính thức và không tự đưa ra cảnh báo tương tác thuốc. Nên xem nó là nơi lưu trữ và tra cứu hồ sơ, không phải hệ thống ra quyết định lâm sàng.
Cẩn thận khi tìm kiếm vì có hiện tượng trùng tên. MediKeep 2.0 là sản phẩm của MediKeep OÜ, một công ty phát triển ứng dụng tư vấn thuốc, không liên quan đến dự án mã nguồn mở MediKeep trên GitHub. Khi cài, bạn nên kiểm tra URL repo để tránh nhầm.
Ở thời điểm hiện tại, dự án chưa cung cấp hệ thống nhắc lịch đẩy trên iOS, chưa có thuật toán personalized drug dosing. Vì vậy nếu bạn cần những tính năng này, hãy kết hợp MediKeep với công cụ khác.

Câu hỏi thường gặp
Dữ liệu của tôi có được lưu hoàn toàn trên máy chủ không?
Có. MediKeep cài trên máy chủ của bạn nên hồ sơ nằm trong PostgreSQL và volume Docker cục bộ. Không có nhà cung cấp đám mây nào tự động nhận dữ liệu, trừ khi bạn đổi cấu hình để gửi đi nơi khác.
MediKeep có tự nhắc uống thuốc trên iPhone không?
Chưa có. MediKeep lưu lịch trình nhưng không có push notification riêng trên iOS. Bạn có thể tạo Reminders thủ công hoặc dùng ứng dụng iOS với dữ liệu lịch lấy từ hồ sơ MediKeep. Đây là hạn chế lớn nếu bạn cần cảnh báo đúng giờ hằng ngày.
MediKeep 2.0 và MediKeep có phải cùng một sản phẩm không?
Không. MediKeep mã nguồn mở là dự án quản lý hồ sơ y tế self-hosted. MediKeep 2.0 là sản phẩm của MediKeep OÜ, tập trung vào tư vấn thuốc và tương tác thuốc, không thuộc cùng dự án hay cùng nhà phát triển.
Tôi có cần biết Docker trước khi cài MediKeep không?
Cần tối thiểu. Nếu muốn dùng thử nhanh, chọn RepoCloud để triển khai không cần tự cài Docker. Nếu muốn chạy tại nhà, Unraid và Synology NAS có giao diện Docker hỗ trợ trực quan hơn.
MediKeep xứng đáng là một trong những ứng dụng self-hosted đáng chú ý để xây dựng hồ sơ y tế cá nhân. Dù vẫn còn giới hạn về reminder hay tư vấn thuốc, nó mang lại quyền kiểm soát mà không phải dịch vụ đám mây nào cũng có. Nếu muốn tự quản lý hồ sơ bệnh án, hãy xem repo mã nguồn trên GitHub và bắt đầu với Docker Compose.

