Installation¶
The recommended way to use the BEL.bio API is to use the docker image. We publish the released BEL.bio API releases as docker images on Dockerhub at https://hub.docker.com/r/belbio/bel_api/.
Configuration¶
Configuration is described in the BEL Python package documentation
Docker Compose¶
# docker-compose build && docker-compose up -d version: "3.2" volumes: bel_arango_data: driver: local bel_elasticsearch_data: driver: local bel_kibana_data: driver: local services: # BEL API - core requirement # belbio_conf api_url: http://localhost:8000 bel_api: container_name: bel_api image: belbio/bel_api ports: - "8000:8000" volumes: - ./belbio_conf.yml:/app/belbio_conf.yml - ./belbio_secrets.yml:/app/belbio_secrets.yml environment: - SERVER_MODE=DEV - traefik.enable=true - traefik.backend=bel_api - traefik.frontend.rule=Host:belapi.test;PathPrefixStrip:/v1 - traefik.port=8000 # restart: always # ArangoDB - document/graph store - core requirement # belbio_conf arangodb_host: localhost port: 8529 bel_arangodb: container_name: bel_arangodb image: arangodb:3.3.4 ports: - "8529:8529" volumes: - bel_arango_data:/var/lib/arangodb3 environment: - ARANGO_NO_AUTH=1 healthcheck: test: curl -f bel_arangodb:8529/_api/version || exit 1 # restart: always # Elasticsearch - terminology search - core requirement # belbio_conf elasticsearch: http://localhost:9200 bel_elasticsearch: container_name: bel_elasticsearch image: docker.elastic.co/elasticsearch/elasticsearch:6.1.0 ports: - "9200:9200" volumes: - bel_elasticsearch_data:/usr/share/elasticsearch/data - ./elasticsearch.yml:/conf/elasticsearch.yml # logging: # driver: none environment: - cluster.name=docker-cluster - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - xpack.security.enabled=false - xpack.watcher.enabled=false ulimits: memlock: soft: -1 hard: -1 # deploy: # resources: # limits: # memory: 1g # restart: always
Development Installation¶
Please read Contributing to understand how to contribute to this project.
- Fork the bel_api project at https://github.com/belbio/bel_api
- git clone <your project fork>
- make dev_install
- To make bel python package editable pip install -e <directory of bel python package>