ohif-viewer/docs/latest/connecting-to-image-archives/google-cloud-healthcare.md
Danny Brown 49d343941e
fix: measurementsAPI issue caused by production build (#842)
* ci: test docs-publish

* Specify to use prod

* Babel should transpile with env set by webpack

* in-progress

* in-progress

* Polyfill for ie11 and edge features

* Ditch polyfills w/ babel - we'll use a service for now

* Bump tools version; shift vtk.js up a layer

* Specify we shouldn't target older than IE 11

* ditch babel plugins that should be covered by preset-env

* Add a top level build demo command

* Let our babel config determine settings

* Same babel fixes as PWA

* Rebuild deps that don't satisfy our target

* Mini helper script for excluding all node_modules, except...

* Shift vtk.js dep up a layer

* Kill core-js

* Export in a node happy way

* Updated yarn lock

* Set NODE_ENV when launching anything w/ WebPack

* docs: updated FAQ

* docs: on browser support

* Add support for redux browser extension

* misc. small clean-up

* docs: Remove roadmap page; add browser-support to sidebar

* Formatting

* Remove roadmap links

* Formatting

* ci: Remove config syntax error

* Simplified bug report template

* update community request template

* Update question's template

* simplify build scripts

* specify new script names

* fix: for measurement api being pruned by minimizer in prod builds

* Use named exports

* Simplify config

* Let's not do so much heavy lifting for a dev-server build

* fix dev build

* Add hotkeys to demo

* fix: jest babel config and env specific configs

* Remove call to non-existant command

* Shift experimental proposal plugin up a layer

* Use `https`

* Try with reduced number of package exceptions

* Try to resolve cypress issue

* Try to fix cypress issue in CI

* Skip https
2019-09-04 13:53:13 -04:00

2.8 KiB

Google Cloud Healthcare

The Google Cloud Healthcare API is a powerful option for storing medical imaging data in the cloud.

An alternative to deploying your own PACS is to use a software-as-a-service provider such as Google Cloud. The Cloud Healthcare API promises to be a scalable, secure, cost effective image storage solution for those willing to store their data in the cloud. It offers an almost-entirely complete DICOMWeb API which requires tokens generated via the OAuth 2.0 Sign In flow. Images can even be transcoded on the fly if this is desired.

Setup a Google Cloud Healthcare Project

  • Create a Google Cloud account

  • Create a project in Google Cloud

  • Enable the Cloud Healthcare API for your project.

    • (Optional): Create a Dataset and Data Store for storing your DICOM data
  • Enable the Cloud Resource Manager API for your project.

    • Note: If you are having trouble finding the APIs, use the search box at the top of the Cloud console.
  • Go to APIs & Services > Credentials to create an OAuth Consent screen and fill in your application details.

    • Under Scopes for Google APIs, click "manually paste scopes".
    • Add the following scopes:
      • https://www.googleapis.com/auth/cloudplatformprojects.readonly
      • https://www.googleapis.com/auth/cloud-healthcare
  • Go to APIs & Services > Credentials to create a new set of credentials:

    • Choose the "Web Application" type
    • Set up an OAuth 2.0 Client ID
    • Add your domain (e.g. http://localhost:3000) to Authorized JavaScript origins.
    • Add your domain, plus callback (e.g. http://localhost:3000/callback) to Authorized Redirect URIs.
    • Save your Client ID for later.
  • (Optional): Enable Public Datasets that are being hosted by Google: https://cloud.google.com/healthcare/docs/resources/public-datasets/

Run the viewer with your OAuth Client ID

  1. Open the config/google.js file and change YOURCLIENTID to your Client ID value.
  2. Run the OHIF Viewer using the config/google.js configuration file
cd OHIFViewer
yarn install
APP_CONFIG=config/google.js yarn run dev

Running via Docker

The OHIF Viewer Docker container can be connected to Google Cloud Healthcare by providing a Client ID at runtime. This is a very simple method to get up and running.

  1. Install Docker (https://www.docker.com/)
  2. Run the Docker container, providing a Client ID as an environment variable. Client IDs look like xyz.apps.googleusercontent.com.
docker run --env CLIENT_ID=$CLIENT_ID --publish 5000:80 ohif/viewer:latest