Sign inSign up

donthompson/dicom-router

By donthompson

•Updated over 1 year ago

Dockerized DICOM C-STORE SCP with file storage and SQLite metadata

Image
Integration & delivery
Databases & storage
Monitoring & observability
0

10K+

donthompson/dicom-router repository overview

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

⁠Pull the image

docker pull donthompson/dicom-router:latest

⁠Run the router (persist files/DB under ./dicomdb)

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

⁠look for "(healthy)" under STATUS

View logs: docker logs dicom-router

šŸ“œ License Apache 2.0 (or whichever applies)

Tag summary

Content type

Image

Digest

sha256:e998afea3…

Size

58.8 MB

Last updated

over 1 year ago

docker pull donthompson/dicom-router