{"id":13416142,"url":"https://github.com/clusterdock/clusterdock","last_synced_at":"2025-12-14T10:59:14.049Z","repository":{"id":46084409,"uuid":"71294864","full_name":"clusterdock/clusterdock","owner":"clusterdock","description":"clusterdock is a framework for creating Docker-based container clusters","archived":false,"fork":false,"pushed_at":"2023-05-16T18:05:45.000Z","size":274,"stargazers_count":29,"open_issues_count":12,"forks_count":9,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-09-25T00:58:07.412Z","etag":null,"topics":["big-data","docker","hadoop"],"latest_commit_sha":null,"homepage":"http://clusterdock.rtfd.io","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/clusterdock.png","metadata":{"files":{"readme":"README.rst","changelog":"HISTORY.rst","contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.rst"}},"created_at":"2016-10-18T21:56:48.000Z","updated_at":"2024-09-22T06:12:00.000Z","dependencies_parsed_at":"2024-01-22T06:54:09.393Z","dependency_job_id":null,"html_url":"https://github.com/clusterdock/clusterdock","commit_stats":{"total_commits":108,"total_committers":6,"mean_commits":18.0,"dds":"0.18518518518518523","last_synced_commit":"8785bf38fa1f9d424487fbba7e81ab806e8c3b30"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/clusterdock/clusterdock","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterdock%2Fclusterdock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterdock%2Fclusterdock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterdock%2Fclusterdock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterdock%2Fclusterdock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clusterdock","download_url":"https://codeload.github.com/clusterdock/clusterdock/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterdock%2Fclusterdock/sbom","scorecard":{"id":293718,"data":{"date":"2025-08-11","repo":{"name":"github.com/clusterdock/clusterdock","commit":"8785bf38fa1f9d424487fbba7e81ab806e8c3b30"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Code-Review","score":2,"reason":"Found 6/28 approved changesets -- score normalized to 2","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":0,"reason":"17 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2021-142 / GHSA-8q59-q68h-6hv4","Warn: Project is vulnerable to: PYSEC-2018-49 / GHSA-rprw-h62v-c2w7","Warn: Project is vulnerable to: GHSA-3ww4-gg4f-jr7f","Warn: Project is vulnerable to: GHSA-5cpq-8wj7-hf2v","Warn: Project is vulnerable to: GHSA-9v9h-cgj8-h64p","Warn: Project is vulnerable to: PYSEC-2021-62 / GHSA-hggm-jpg3-v476","Warn: Project is vulnerable to: GHSA-jm77-qphf-c4w8","Warn: Project is vulnerable to: GHSA-x4qr-2fvf-3mr5","Warn: Project is vulnerable to: PYSEC-2021-437 / GHSA-5xp3-jfq3-5q8x","Warn: Project is vulnerable to: PYSEC-2020-173 / GHSA-gpvv-69j7-gwj8","Warn: Project is vulnerable to: PYSEC-2023-228 / GHSA-mq26-g339-26xf","Warn: Project is vulnerable to: PYSEC-2014-14 / GHSA-652x-xj99-gmcc","Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: GHSA-9wx4-h78v-vm56","Warn: Project is vulnerable to: PYSEC-2014-13 / GHSA-cfj3-7x9c-4p3h","Warn: Project is vulnerable to: PYSEC-2018-28 / GHSA-x84v-xcm2-53pg","Warn: Project is vulnerable to: PYSEC-2022-43017 / GHSA-qwmp-2cf2-g9g6"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 8 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T18:56:36.889Z","repository_id":46084409,"created_at":"2025-08-17T18:56:36.890Z","updated_at":"2025-08-17T18:56:36.890Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27726865,"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","status":"online","status_checked_at":"2025-12-14T02:00:11.348Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["big-data","docker","hadoop"],"created_at":"2024-07-30T21:00:54.713Z","updated_at":"2025-12-14T10:59:14.028Z","avatar_url":"https://github.com/clusterdock.png","language":"Python","readme":"===========\nclusterdock\n===========\n\n.. image:: https://img.shields.io/pypi/l/clusterdock.svg\n    :target: https://pypi.python.org/pypi/clusterdock\n\n.. image:: https://img.shields.io/pypi/v/clusterdock.svg\n        :target: https://pypi.python.org/pypi/clusterdock\n\n.. image:: https://readthedocs.org/projects/clusterdock/badge/?version=latest\n        :target: https://clusterdock.readthedocs.io/en/latest/?badge=latest\n        :alt: Documentation Status\n\n.. image:: https://img.shields.io/pypi/pyversions/clusterdock.svg\n    :target: https://pypi.python.org/pypi/clusterdock\n\n------------------\n\n**clusterdock** is a Python 3 project that enables users to build,\nstart, and manage Docker container-based clusters. It uses a pluggable\nsystem for defining new types of clusters using folders called *topologies* and\nis a swell project, if I may say so myself.\n\n------------------\n\n\"I hate reading, make this quick.\"\n==================================\n\nBefore doing anything, install a recent version of `Docker`_ to your machine and install\nclusterdock:\n\n.. code-block:: console\n\n    $ pip3 install clusterdock\n\nNext, clone a clusterdock topology to your machine. For this example, we'll use the\n`nodebase topology`_. You could start a 2-node cluster:\n\n.. _Docker: https://www.docker.com/\n.. _nodebase topology: https://github.com/clusterdock/topology_nodebase\n\n.. code-block:: console\n\n    $ git clone https://github.com/clusterdock/topology_nodebase.git\n    $ clusterdock start topology_nodebase\n    2017-08-03 10:04:18 PM clusterdock.models   INFO     Starting cluster on network (cluster) ...\n    2017-08-03 10:04:18 PM clusterdock.models   INFO     Starting node node-1.cluster ...\n    2017-08-03 10:04:19 PM clusterdock.models   INFO     Starting node node-2.cluster ...\n    2017-08-03 10:04:20 PM clusterdock.models   INFO     Cluster started successfully (total time: 00:00:01.621).\n\nTo list cluster nodes:\n\n.. code-block:: console\n\n    $ clusterdock ps\n\n    For cluster `famous_hyades` on network cluster the node(s) are:\n    CONTAINER ID     HOST NAME            PORTS              STATUS        CONTAINER NAME          VERSION    IMAGE\n    a205d88beb       node-2.cluster                          running       nervous_sinoussi        1.3.3      clusterdock/topology_nodebase:centos6.6\n    6f2825c596       node-1.cluster       8080-\u003e80/tcp       running       priceless_franklin      1.3.3      clusterdock/topology_nodebase:centos6.6\n\nTo SSH into a node and look around:\n\n.. code-block:: console\n\n    $ clusterdock ssh node-1.cluster\n    [root@node-1 ~]# ls -l / | head\n    total 64\n    dr-xr-xr-x   1 root root 4096 May 19 20:48 bin\n    drwxr-xr-x   5 root root  360 Aug  4 05:04 dev\n    drwxr-xr-x   1 root root 4096 Aug  4 05:04 etc\n    drwxr-xr-x   2 root root 4096 Sep 23  2011 home\n    dr-xr-xr-x   7 root root 4096 Mar  4  2015 lib\n    dr-xr-xr-x   1 root root 4096 May 19 20:48 lib64\n    drwx------   2 root root 4096 Mar  4  2015 lost+found\n    drwxr-xr-x   2 root root 4096 Sep 23  2011 media\n    drwxr-xr-x   2 root root 4096 Sep 23  2011 mnt\n    [root@node-1 ~]# exit\n\nTo see full usage instructions for the ``start`` action, use ``-h``/``--help``:\n\n.. code-block:: console\n\n    $ clusterdock start topology_nodebase -h\n    usage: clusterdock start [-h] [--node-disks map] [--always-pull]\n                             [--namespace ns] [--network nw] [-o sys] [-r url]\n                             [--nodes node [node ...]]\n                             topology\n\n    Start a nodebase cluster\n\n    positional arguments:\n      topology              A clusterdock topology directory\n\n    optional arguments:\n      -h, --help            show this help message and exit\n      --always-pull         Pull latest images, even if they're available locally\n                            (default: False)\n      --namespace ns        Namespace to use when looking for images (default:\n                            clusterdock)\n      --network nw          Docker network to use (default: cluster)\n      -o sys, --operating-system sys\n                            Operating system to use for cluster nodes (default:\n                            centos6.6)\n      -r url, --registry url\n                            Docker Registry from which to pull images (default:\n                            None)\n\n    nodebase arguments:\n      --node-disks map      Map of node names to block devices (default: None)\n\n    Node groups:\n      --nodes node [node ...]\n                            Nodes of the nodes group (default: ['node-1',\n                            'node-2'])\n\nWhen you're done and want to clean up:\n\n.. code-block:: console\n\n    $ clusterdock manage nuke\n    2017-08-03 10:06:28 PM clusterdock.actions.manage INFO     Stopping and removing clusterdock containers ...\n    2017-08-03 10:06:30 PM clusterdock.actions.manage INFO     Removed user-defined networks ...\n\nTo see full usage instructions for the ``build`` action, use ``-h``/``--help``:\n\n.. code-block:: console\n\n    $ clusterdock build topology_nodebase -h\n    usage: clusterdock build [--network nw] [-o sys] [--repository repo] [-h]\n                             topology\n\n    Build images for the nodebase topology\n\n    positional arguments:\n      topology              A clusterdock topology directory\n\n    optional arguments:\n      --network nw          Docker network to use (default: cluster)\n      -o sys, --operating-system sys\n                            Operating system to use for cluster nodes (default:\n                            None)\n      --repository repo     Docker repository to use for committing images\n                            (default: docker.io/clusterdock)\n      -h, --help            show this help message and exit\n","funding_links":[],"categories":["Container Operations"],"sub_categories":["Orchestration"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclusterdock%2Fclusterdock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclusterdock%2Fclusterdock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclusterdock%2Fclusterdock/lists"}