{"id":18947368,"url":"https://github.com/openfluid/openfluid-fluidhub","last_synced_at":"2026-04-14T06:04:45.581Z","repository":{"id":151667442,"uuid":"105266033","full_name":"OpenFLUID/openfluid-fluidhub","owner":"OpenFLUID","description":"FluidHub services","archived":false,"fork":false,"pushed_at":"2017-10-18T13:18:05.000Z","size":623,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2025-01-01T00:45:34.632Z","etag":null,"topics":["api","flask","git","python","services"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OpenFLUID.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}},"created_at":"2017-09-29T11:42:34.000Z","updated_at":"2017-10-16T15:25:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"bc95b26b-d8da-49a6-a1f6-6275e0b6b9fb","html_url":"https://github.com/OpenFLUID/openfluid-fluidhub","commit_stats":{"total_commits":24,"total_committers":2,"mean_commits":12.0,"dds":0.04166666666666663,"last_synced_commit":"247b3e727c1ff37eec4c0720aa7dcc016b6f02e9"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenFLUID%2Fopenfluid-fluidhub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenFLUID%2Fopenfluid-fluidhub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenFLUID%2Fopenfluid-fluidhub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenFLUID%2Fopenfluid-fluidhub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OpenFLUID","download_url":"https://codeload.github.com/OpenFLUID/openfluid-fluidhub/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239946876,"owners_count":19723014,"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":["api","flask","git","python","services"],"created_at":"2024-11-08T13:09:47.468Z","updated_at":"2026-03-26T22:30:20.289Z","avatar_url":"https://github.com/OpenFLUID.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Overview\n\nSoftware infrastructure for OpenFLUID FluidHub services, based on Docker containers managed by docker-compose\n\n\n# Requirements\n\n* docker (\u003e= 17.06)\n* docker-compose\n\n\n# Production mode\n\n\n## Initialize\n\nThe initialization consists in creating the data directory with the minimal required structure.\nIt also creates a default `admin` user with password `admin`. It is really encouraged to change this password immediately.\n\nFrom the root of the source tree, use the `prod-init` wrapper script, with the path of the directory to initialize as an argument:\n```\n./prod-init /path/to/data\n```\n**YOU ARE REALLY ENCOURAGED TO CHANGE THE DEFAULT SECRET VALUE IN the `common/local.conf` FILE LOCATED IN YOUR DATA DIRECTORY**\n\n## Build\n\nThe build will produced the corresponding Docker image. It should be performed once for all before launching the services.  \n\nFrom the root of the source tree, use the `prod-server` wrapper script (recommended):\n```\nFLUIDHUB_DATAPATH=/path/to/data ./prod-server build\n```\n\n\nYou can also use the docker-compose command directly:\n```\nFLUIDHUB_DATAPATH=/path/to/data docker-compose -f docker/docker-compose.yml build\n```\n\n## Launch services\n\nThe run will launch the services.  \n\nFrom the root of the source tree, use the `prod-server` wrapper script (recommended):\n```\nFLUIDHUB_DATAPATH=/path/to/data ./prod-server up\n```\n\nYou can also use the docker-compose command directly:\n```\nFLUIDHUB_DATAPATH=/path/to/data docker-compose -f docker/docker-compose.yml up\n```\n\nThe only username available at first launch is the Adminsitrator with username `admin` and password `admin`.  \n**YOU ARE REALLY ENCOURAGED TO CHANGE THE `admin` PASSWORD AT FIRST LAUNCH**\n\n\n## Deploy through frontend\n\nBy default, the FluidHub services runs in HTTP on port 3447 of a Docker container.  \nYou have to configure an http server in HTTPs mode, such as Apache or Nginx, to redirect the incoming HTTPs stream to this HTTP port.\n\n\n\n# Development mode\n\n\nThe source tree is organized as below:\n```\n/fluidhub\n  /app        -\u003e main application source code\n  /FluidHub   -\u003e FluidHub package containing common modules\n/resources    -\u003e various ressources\n/tests        -\u003e tests source code and resources\n/docker       -\u003e configurations for Docker containers and docker-compose\n```\n\n## Initialize\n\nThe initialization consists in creating the data directory with the minimal required structure withinin the `_dev` subdirectory.\nIt also creates a default `admin` user with password `admin`.\n\nFrom the root of the source tree, use the `dev-init` wrapper script:\n```\n./dev-init\n```\n\n\n## Launch services\n\nThe run will launch the services currently under development.  \n\nFrom the root of the source tree, use the `dev-server` wrapper script (recommended), the `FLUIDHUB_DATAPATH` environment variable is automatically set:\n```\n./dev-server up\n```\n\nYou can also use the docker-compose command directly:\n```\nFLUIDHUB_DATAPATH=./_dev/server/data docker-compose -f docker/docker-compose.yml -f docker/docker-compose-dev.yml up\n```\n\n\n## Run tests\n\n\nRun the [nosetests](http://nose.readthedocs.io) tool from the root of the source tree, using the `dev-runtests` wrapper script:\n```\n./dev-runtests nosetests\n```\nFor a more detailed execution of tests, you can add verbosity and stdout options:\n```\n./dev-runtests nosetests --verbosity=3 -s\n```\n\n# External resources\n\n* http://flask.pocoo.org/docs/0.12/\n* https://flask-httpauth.readthedocs.io/en/latest/\n* https://code-maven.com/deploying-python-flask-using-uwsgi-on-ubuntu-14-04\n* http://stewartjpark.com/2015/01/02/implementing-a-git-http-server-in-python.html\n* https://pyjwt.readthedocs.io/en/latest/\n* https://www.sqlalchemy.org/\n* http://nose.readthedocs.io/en/latest/index.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenfluid%2Fopenfluid-fluidhub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenfluid%2Fopenfluid-fluidhub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenfluid%2Fopenfluid-fluidhub/lists"}