Run the ChRIS Store

Let's get the ChRIS Store running!
In this tutorial, you'll stand up a local instance of the ChRIS Store on your local system. You can use this setup to push plugins to in order to load them into ChRIS to test a ChRIS admin workflow. You can also follow these instructions to get set up to work on the ChRIS Store itself.This tutorial is based on the README files for the ChRIS Store UI repository. Where these instructions may end up differing with those resources, the README files will always be the most up-to-date and correct. We provide this tutorial as a single comprehensive document to get you started.
Pre-requisites
NOTE: These pre-requisites are the same as in the Get ChRIS Running tutorial. If you have already completed that tutorial, you may skip the pre-requisites setup steps below and skip to the next section, "Get the ChRIS Store backend running."
- A laptop or workstation running Linux (Fedora*, CentOS, Ubuntu, or Debian), Mac OS X 10.14+, or Windows 10 (64-bit).
- Docker 18.06.0+ with Docker Compose 1.22.0+ (Use link for your distro / OS above.)
- (Linux-only) Your OS user should be in a
docker
user group. After installing Docker, do the following in a terminal:sudo groupadd docker
sudo usermod -aG docker $USER
- Log out, and log back in.
Get the ChRIS Store backend running
After you've met the pre-requisites, you'll need to the ChRIS Store backend up and running.
Open up a terminal on your system and follow these steps:-
Clone the ChRIS Store backend repo.
git clone https://github.com/FNNDSC/ChRIS_store.git
- Go into the ChRIS Store backend directory.
cd ChRIS_store
-
Make the ChRIS Store.
./make.sh up
Tearing down the ChRIS Store backend
You can later remove all the backend containers and release storage volumes with:
$ cd ChRIS_store $ ./make.sh down
Get the ChRIS Store UI frontend up and running
Now, let's get the web-based UI for the ChRIS Store working. The ChRIS Store UI uses TypeScript, React, the PatternFly React pattern library.
Open up a terminal on your system and follow these steps:-
Clone the ChRIS Store UI repo.
git clone https://github.com/FNNDSC/ChRIS_store_ui.git
- Go into the ChRIS UI directory.
cd ChRIS_store_ui
-
Run the ChRIS UI.
docker run --rm -it -v $(pwd):/home/localuser -p 3000:3000 -u $(id -u):$(id -g) --name chris_store_ui fnndsc/chris_store_ui:dev
-
Open the website in a browser.
http://localhost:3000
More detailed instructions for the ChRIS Store UI are available in the ChRIS Store UI repository's README.Development Note
Before each commit, a precommit script is run automatically to ensure all tests pass and all JavaScript code follows the Airbnb style guide. Please note that if you are using the docker commands then you need to run git inside the container. For instance open a new terminal and type:
$ docker exec -it chris_store_ui git status
What's Next?
Now that you've got a got both the ChRIS backend and ChRIS front end running, why not set up the ChRIS store?

Set Up the ChRIS Store
If you want to work on the ChRIS store, or need to test loading plugins into a ChRIS instance, you'll need to get the ChRIS store running on your system. Here's how.