FHIR Controller is a base standalone web application image providing a simple web UI for bootstrapping a freshly booted FHIR server. Just drop your FHIR data bundles and CQL files into a child project and extend the base Docker image. You'll get:
- An HTML rendering of your Markdown-formatted instructions or tutorial and supplemental links.
- Data loader utility for seeding your FHIR Bundles and CQL files in sequence to a default FHIR base URL.
- Server reset button for restoring the server to a default state, if supported by the server. Deletion of all records en masse is not a standard FHIR operation and requires the server driver support to support it: currently HAPI and WildFHIR drivers.
The stack controller operates purely in-browser and makes all FHIR API calls via REST. There are no other server-side API calls.
When the stack controller loads, must be provided a configuration file either by:
- Overwriting the
stack.jsonfile in the base image at image boot time, or - Using a
urlquery string parmater at page load time that points to a valid alternative configuration file, such as?url=http://your.example.com/stack.json.
See https://github.com/asushares/stack for a working example of how to create a Dockerfile using this base image. The general steps are:
- Copy your data files into the image, e.g.
COPY /whatever .. All files copied into the image will be downloadable from the root/path. - Include a copy of a
stack.jsonfile defining the controller name, data file load order, and other metadata to load by default. - Build it! Once running, it can be used as an entrypoint UI for building a tutorial of using your application stack with built-in FHIR data bundle loading and FHIR server resets. Note: "Expunging" data requires a supported non-standard operation of the underlying FHIR server.
See stack.schema.json for the JSON schema.
Provided under the Apache 2.0 license. Copyright © 2024+ Preston Lee. All rights reserved.