euxhenh / cellar

Interactive software tool for the assignment of cell types in single-cell studies.
https://cellar.cmu.hubmapconsortium.org/app/cellar
MIT License
31 stars 5 forks source link

How to create a mirror with my own example data? #4

Open ckfromCN opened 2 years ago

ckfromCN commented 2 years ago

Hi, It's an amazing job,and I want to create a mirror on my website with my example data.

May I ask how can I create a site mirror with default data?

It's like when you go to a website and show the content after click on "LOAD" to display .

image

euxhenh commented 2 years ago

Hi,

Thank you! If I understand this correctly, you wish to host Cellar on your own server. You can do this by downloading Cellar's docker image and deploying it using shinyproxy. The steps you would need to follow are:

  1. Pull the docker image docker pull euxhen/cellar
  2. Download the latest shinyproxy release at https://www.shinyproxy.io/downloads/
  3. Edit shinyproxy's application.yml file based on https://www.shinyproxy.io/documentation/configuration/
  4. Run java -jar shinyproxy-2.x.x.jar on the folder where application.yml is located

Note: you may need to enable docker remote API as explained here.

Here is an example of a minimal application.yml (it assumes a docker network with the name cellar exists; you can create this with docker network create cellar)

proxy:
  title: Cellar
  landing-page: /app/cellar
  heartbeat-rate: 100000
  heartbeat-timeout: 600000
  container-wait-time: 200000
  port: 9876
  authentication: none
  admin-groups: none
  hide-navbar: true
  # Docker configuration
  docker:
    url: http://localhost:2375
  specs:
  - id: cellar
    display-name: Cellar
    container-network: cellar
    container-image: euxhen/cellar
    port: 8050
    container-volumes: [
      "path/to/your/data:/home/nonroot/cellar/data/server",
    ]
    container-env:
      SCRIPT_NAME: "#{proxy.getRuntimeValue('SHINYPROXY_PUBLIC_PATH').replaceFirst('/$','')}"
    target-path: "#{proxy.getRuntimeValue('SHINYPROXY_PUBLIC_PATH')}"

server:
  servlet.session.timeout: 3600