Giter Club home page Giter Club logo

beacon-demo's Introduction

Beacon demo

This repository helps you setup a beacon demo in a docker container.

For convenience, we created a Makefile, that contains all the necessary commands.

Step 1: Get the source files

Clone this repository to your machine

git clone https://github.com/ga4gh-beacon/beacon-demo
# and go inside
cd beacon-demo

Step 2: Compile the java code

This step is done on your machine, it is simpler than in a docker container.

Clone the repository (version 1.0.1):

git clone https://github.com/ga4gh-beacon/beacon-elixir.git code
cd code
git checkout v1.0.1

Do update the CORS setting in elixir_beacon/src/main/resources/META-INF/corsFilter.properties with:

allowed.origins=*

Follow the instructions from the reference implementation

Step 3: Prepare the docker image

We use a Postgres database, running in a docker container. We add the jar file created with step 1, and load some data.

Copy the java target, the data to load and the database definitions to /beacon

cd [back-to-this-repository]
mkdir beacon
cp code/elixir_beacon/target/elixir-beacon-1.0.1-SNAPSHOT.jar beacon/beacon.jar
cp code/elixir_beacon/src/main/resources/application-dev.properties beacon/.
cp -r code/elixir_beacon/src/main/resources/META-INF/1000_genomes_data beacon/data

Do update the API endpoint from v1 to v1.0.1 in the beacon/application-dev.properties properties file.

The docker image is named elixir/beacon and is created with:

make build

Step 4: Instanciate a docker container from the image

Once the image is build, run:

make up

If you want to follow what is happening:

make log

You can then contact the beacon with:

curl http://localhost:9075/elixirbeacon/v1.0.1/beacon/

Or open a web browser at the above URL

Here are a few other examples of queries:

Step 5: Tear down everything

make down

Note

For the moment, it's all in one docker container.

We plan on separating the database from the beacon controller in a future release.

beacon-demo's People

Contributors

silverdaz avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

beacon-demo's Issues

Installation fails on step2

Hi,
The installation fails from step2 onwards. I have highlighted (bold) the failing commands below:

jl@lynx:/soft$ git clone https://github.com/ga4gh-beacon/beacon-demo
Clonando en 'beacon-demo'...
remote: Enumerating objects: 36, done.
remote: Total 36 (delta 0), reused 0 (delta 0), pack-reused 36
Desempaquetando objetos: 100% (36/36), listo.
jl@lynx:/soft$ # and go inside
jl@lynx:/soft$ cd beacon-demo
jl@lynx:/soft/beacon-demo$ git clone https://github.com/ga4gh-beacon/beacon-elixir.git code
Clonando en 'code'...
remote: Enumerating objects: 61, done.
remote: Counting objects: 100% (61/61), done.
remote: Compressing objects: 100% (61/61), done.
Recibiendo objetos: 9% (287/3013), 10.07 MiB | 3.31 MiB/s
remote: Total 3013 (delta 27), reused 0 (delta 0), pack-reused 2952
Recibiendo objetos: 100% (3013/3013), 20.78 MiB | 3.45 MiB/s, listo.
Resolviendo deltas: 100% (1433/1433), listo.
jl@lynx:/soft/beacon-demo$ cd code
jl@lynx:/soft/beacon-demo/code$ git checkout v1.0.1
Nota: actualizando el árbol de trabajo 'v1.0.1'.

Te encuentras en estado 'detached HEAD'. Puedes revisar por aquí, hacer
cambios experimentales y confirmarlos, y puedes descartar cualquier
commit que hayas hecho en este estado sin impactar a tu rama realizando
otro checkout.

Si quieres crear una nueva rama para mantener los commits que has creado,
puedes hacerlo (ahora o después) usando -b con el comando checkout. Ejemplo:

git checkout -b

HEAD está ahora en 1cfe675 Delete obsolete file.

jl@lynx:/soft/beacon-demo/code$ allowed.origins=
allowed.origins=*: orden no encontrada
jl@lynx:/soft/beacon-demo/code$ cd ..
jl@lynx:/soft/beacon-demo$ mkdir beacon
jl@lynx:/soft/beacon-demo$ cp code/elixir_beacon/target/elixir-beacon-1.0.1-SNAPSHOT.jar beacon/beacon.jar
cp: no se puede efectuar `stat' sobre 'code/elixir_beacon/target/elixir-beacon-1.0.1-SNAPSHOT.jar': No existe el archivo o el directorio
*

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.