ChRIS_ui
This page is for an upcoming release of ChRIS.
ChRIS_ui can be deployed as a container image. For example, using Docker or Podman:
docker run --rm -it -p 8080:80 \
-e CHRIS_UI_URL="http://$(hostname):8000/api/v1/" \
-e PFDCM_URL="http://$(hostname):4005/" \
ghcr.io/fnndsc/chris_ui:staging
Images are built automatically by GitHub Actions for every push to the master and staging branches, as well as PRs targeting those branches. The list of available images can be found here ⟶ https://github.com/FNNDSC/ChRIS_ui/pkgs/container/chris_ui
Environment Variables
Name | Required? | Description |
---|---|---|
CHRIS_UI_URL | required | ChRIS backend API URL, e.g. https://example.org/api/v1/ |
PFDCM_URL | required | PFDCM API URL, e.g. http://example.org:4005/ |
OHIF_URL | optional | OHIF server URL |
ACKEE_SERVER | optional | Ackee server URL, see analytics |
ACKEE_DOMAIN_ID | optional | Ackee domain ID, see analytics |
SERVER_PORT | optional | HTTP port, see server configuration |
Server Configuration
static-web-server, a Rust-based web server, is used for serving static files. It can be configured using environment variables. See here: https://static-web-server.net/configuration/environment-variables/
Note that not all options can be overridden. See the /config.toml
file in the ChRIS_ui container image.
Analytics
We use Ackee for privacy-respecting web analytics.
You need to self-host an instance of Ackee, then set the environment variables
ACKEE_SERVER
and ACKEE_DOMAIN_ID
on ChRIS_ui.
Container Security
The container user must be part of the root
group (which is a recommended and secure practice,
according to Red Hat).
You can run as an arbitrary user, e.g. using Docker:
docker run -u 100100:100100 --group-add=root \
-e CHRIS_UI_URL=http://localhost:8000/api/v1/ \
-e PFDCM_URL=http://localhost:4005/ \
-e SERVER_PORT=9999 -p 9999:9999 localhost/fnndsc/chris_ui