Skip to content
Snippets Groups Projects
Select Git revision
  • develop
  • master default protected
  • feature/arch_support
  • feature/global_refactoring
  • v1.0.0
5 results

Rosetta

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Stefano Alberto Russo authored
    a68315ae
    History

    ubuntu@rosetta# Rosetta 🛰️

    A container-centric Science Platform

    Rosetta makes it easy to run graphical interactive workloads on batch and remote computing systems using Docker and Singularity containers.

    Rosetta licensed under the Apache License 2.0, unless otherwise specificed.

    Quickstart

    Requirements:

    Bash, Git and Docker. Runs on Linux, Mac or Windows*.

    *Windows not fully supported in development mode due to lack of support for symbolic links.

    Setup

    $ rosetta/setup

    Build

    $ rosetta/build

    Run

    $ rosetta/run

    Populate demo data

    $ rosetta/populate
    # You can now point your browser to http://localhost:8080
    # Log in using "testuser@rosetta.platform""and password "testpass"
    # To run Slurm jobs, use partition name "partition1"

    Clean

    # rosetta/clean

    Configuration

    Example Webapp configuraion

      - SAFEMODE=False
      - DJANGO_DEV_SERVER=True
      - DJANGO_DEBUG=True
      - DJANGO_LOG_LEVEL=ERROR
      - ROSETTA_LOG_LEVEL=ERROR
      - ROSETTA_TUNNEL_HOST=localhost # Not http or https
      - ROSETTA_WEBAPP_HOST= 
      - ROSETTA_WEBAPP_PORT=8080
      - LOCAL_DOCKER_REGISTRY_HOST=
      - LOCAL_DOCKER_REGISTRY_PORT=5000
      - DJANGO_EMAIL_SERVICE=Sendgrid
      - DJANGO_EMAIL_APIKEY=
      - DJANGO_EMAIL_FROM="Rosetta <notifications@rosetta.local>"
      - DJANGO_PUBLIC_HTTP_HOST=http://localhost # Public facing, with http or https
      - OIDC_RP_CLIENT_ID=""
      - OIDC_RP_CLIENT_SECRET=""
      - OIDC_OP_AUTHORIZATION_ENDPOINT=""
      - OIDC_OP_TOKEN_ENDPOINT=""
      - OIDC_OP_JWKS_ENDPOINT=""

    Extras

    List all running services

    # rosetta/ps

    Check status (not yet fully supported)

    # rosetta/status

    Building errors

    It is common for the build process to fail with a "404 not found" error on an apt-get instrucions, as apt repositories often change their IP addresses. In such case, try:

    $ rosetta/build nocache

    Development mode

    Django development server is running on port 8080 of the "webapp" service.

    To enable live code changes, add or comment out the following in docker-compose.yaml under the "volumes" section of the "webapp" service:

    - ./services/webapp/code:/opt/code

    This will mount the code from services/webapp/code as a volume inside the webapp container itself allowing to make immediately effective codebase edits.

    Note that when you edit the Django ORM model, you need to make migrations and apply them to migrate the database:

    $ rosetta/makemigrations
    $ rosetta/migrate

    Logs and testing

    Run Web App unit tests (with Rosetta running)

    $ rosetta/logs webapp
    
    $ rosetta/logs webapp startup
    
    $ rosetta/logs webapp server
    
    $ rosetta/test

    Known issues

    SINGULARITY_TMPDIR=/...
    .singularity in user home with limited space