{"id":13557610,"url":"https://github.com/BioContainers/biocontainers-backend","last_synced_at":"2025-04-03T12:30:48.050Z","repository":{"id":52701017,"uuid":"157373555","full_name":"BioContainers/biocontainers-backend","owner":"BioContainers","description":"Python backend for Biocontainers (Flask + MongoDB)","archived":false,"fork":false,"pushed_at":"2024-04-08T16:11:54.000Z","size":1133,"stargazers_count":3,"open_issues_count":9,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-25T06:11:45.638Z","etag":null,"topics":["biocontainers","ga4gh","ga4gh-server","rest-api","restful-api"],"latest_commit_sha":null,"homepage":"http://biocontainers.pro","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BioContainers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-13T12:02:43.000Z","updated_at":"2023-02-16T19:29:32.000Z","dependencies_parsed_at":"2024-11-04T07:32:02.693Z","dependency_job_id":"26088fcd-780b-44aa-a818-9eb6fedd92d1","html_url":"https://github.com/BioContainers/biocontainers-backend","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BioContainers%2Fbiocontainers-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BioContainers%2Fbiocontainers-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BioContainers%2Fbiocontainers-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BioContainers%2Fbiocontainers-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BioContainers","download_url":"https://codeload.github.com/BioContainers/biocontainers-backend/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247002128,"owners_count":20867403,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["biocontainers","ga4gh","ga4gh-server","rest-api","restful-api"],"created_at":"2024-08-01T12:04:26.942Z","updated_at":"2025-04-03T12:30:47.354Z","avatar_url":"https://github.com/BioContainers.png","language":"Python","readme":"[![Python 3.4](https://img.shields.io/badge/python-3.4-green.svg)](https://www.python.org/downloads/release/python-340/)  [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\nBioContainers backed\n=====================================================\n\nThe BioContainers backed for the [Biocontainers Registry](http://biocontainers.pro/registry). The library defines two main components:\n\n- BioContianers pipelines\n- BioContainers Restful API\n\n\nBioContainers Pipelines\n----------------------------\n\nThe BioContainers pipelines contains the tools and workflows to insert quay.io and and dockerhub containers. In addition,\nit gets the information from containers recipes Dockefile or Conda recipes to annotate the containers.\n\n## Pre-requisites\n\n- MongoDB\n- Python \u003e 3.4\n\n### Setting the environment\n\nBefore lunching the pipelines you should add to the ```PYTHONPATH``` the biocontainers-backend folder:\n\n```bash\n$ cd biocontainers-backend\n$ export PYTHONPATH=$PYTHONPATH:./\n```\n\n## Running the pipelines\n\nThe pipelines can be run using the following command:\n\n```bash\npython3.4 biocontainers/pipelines.py --config-file biocontainers/configuration.ini\n```\n\nThis will prompt the following options:\n\n```\n  -q, --import-quayio             Import Quay.io Recipes\n  -k, --import-docker             Import Docker Recipes\n  -c, --config-file PATH\n  -a, --config-profile TEXT       This option allow to select a config profile\n  -db, --db-name TEXT             Name of the database\n  -h, --db-host TEXT              Host the database\n  -auth, --db-auth-database TEXT  Authentication database in Mongo\n  -u, --db-user TEXT              Database root user\n  -pw, --db-password TEXT         Database password\n  -p, --db-port TEXT              Database port\n  --help                          Show this message and exit.\n```\n\n\nBioContainers Flask API\n--------------------------\n\n\nKubernetes deployment\n--------------------------\n\nIn order to facilitate the testing and deployment of the **BioContainers Registry** Resource we have created a kubernetes\n[helm charts deployment](https://helm.sh/). This will enable easy deployment of the solution in a kubernetes cluster or\nin a local [minikube instalation](https://kubernetes.io/docs/setup/minikube/).\n\n### Prerequisites\n\n- [Docker](https://www.docker.com/)\n- [minikube](https://kubernetes.io/docs/setup/minikube/)\n- [git](https://git-scm.com/)\n\n## Build the docker images\n\n- Build the service\n\n```bash\ndocker build -t ypriverol/biocontainers-api-py:1.0.0 .\ndocker push ypriverol/biocontainers-api-py:1.0.0\n```\n\n- Build the pipelines:\n\n```bash\ndocker build -t ypriverol/biocontainers-pipelines-py:1.0.0 .\ndocker build -t ypriverol/biocontainers-pipelines-py:1.0.0\n```\n\n## Running in minikube\n\nDeploying the API is really simple using the Kubernetes configuration:\n\n```bash\nhelm install -f helm-example-configs/minikube.yaml ./biocontainer-registry\n```\n\nSome important commands for kubernetes:\n\nRemove container:\n```\nkubectl delete deployment biocontainers-pipelines-py\n```\n\nHow to Validate the API\n------------------------------\n\nThe API can be validated with the TRS validator tool: http://142.1.177.188:8080/trs/validator/debug?url=http://api.biocontainers.pro","funding_links":[],"categories":["Python","rest-api"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBioContainers%2Fbiocontainers-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBioContainers%2Fbiocontainers-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBioContainers%2Fbiocontainers-backend/lists"}