Dockerized DICOM C-STORE SCP with file storage and SQLite metadata
10K+
A simple, self-contained DICOM C-STORE SCP in Docker Receives DICOM files on port 104, stores the .dcm objects and extracts metadata into an embedded SQLite database.
š¹ Features Standard C-STORE SCP (Ver. CT, MR, SC, PET)
File storage: drops SOP Instances into a host-mounted volume
Metadata DB: auto-initialized SQLite schema (patients, studies, series, instances)
Environment-driven: configurable storage directory & DB path via DICOM_DIR / DB_PATH
Healthcheck: probes port 104 every 30 s, auto-marks container healthy/unhealthy
Restart policy: unless-stopped out of the box (via Compose)
Logging: rotated JSON logs (10 MB max, 3 files)
š¦ Usage
docker pull donthompson/dicom-router:latest
docker run -d
--name dicom-router
-p 104:104
-v "$(pwd)/dicomdb:/app/dicomdb"
donthompson/dicom-router:latest
āļø Configuration ENV variable Default Description DICOM_DIR /app/dicomdb Where to save incoming .dcm files DB_PATH /app/dicomdb/dicom_records.db SQLite DB file path for metadata
š Docker Compose version: '3.8' services: dicom-router: image: donthompson/dicom-router:latest build: context: . dockerfile: docker/Dockerfile ports: - "104:104" volumes: - ./dicomdb:/app/dicomdb restart: unless-stopped logging: driver: json-file options: max-size: "10m" max-file: "3"
Bring it up with: docker-compose up -d
š Health & Logs Health: docker ps
View logs: docker logs dicom-router
š License Apache 2.0 (or whichever applies)
Content type
Image
Digest
sha256:e998afea3ā¦
Size
58.8 MB
Last updated
over 1 year ago
docker pull donthompson/dicom-router