{"id":13839350,"url":"https://github.com/projecteru2/core","last_synced_at":"2025-12-27T09:53:39.173Z","repository":{"id":24596265,"uuid":"102703923","full_name":"projecteru2/core","owner":"projecteru2","description":"Eru, a simple, stateless, flexible,  production-ready orchestrator designed to easily integrate into existing workflows. Can run any virtualization things in long or short time. ","archived":false,"fork":false,"pushed_at":"2024-10-16T12:50:06.000Z","size":5963,"stargazers_count":241,"open_issues_count":6,"forks_count":44,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-11-01T14:03:35.012Z","etag":null,"topics":["container","container-management","container-orchestration","containerization","containers","docker","eru","flexible","golang","grpc","network","orchestration","virtual-machine","virtualization"],"latest_commit_sha":null,"homepage":"https://eru.dev","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/projecteru2.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":"2017-09-07T07:10:04.000Z","updated_at":"2024-10-16T12:50:11.000Z","dependencies_parsed_at":"2023-02-16T04:15:52.091Z","dependency_job_id":"553ff44f-f0d1-40a0-82ef-350fb6543dab","html_url":"https://github.com/projecteru2/core","commit_stats":null,"previous_names":[],"tags_count":64,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projecteru2%2Fcore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projecteru2%2Fcore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projecteru2%2Fcore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projecteru2%2Fcore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/projecteru2","download_url":"https://codeload.github.com/projecteru2/core/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225675073,"owners_count":17506273,"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":["container","container-management","container-orchestration","containerization","containers","docker","eru","flexible","golang","grpc","network","orchestration","virtual-machine","virtualization"],"created_at":"2024-08-04T17:00:19.971Z","updated_at":"2025-12-27T09:53:39.166Z","avatar_url":"https://github.com/projecteru2.png","language":"Go","readme":"Eru\n====\n![](https://github.com/projecteru2/core/workflows/test/badge.svg)\n![](https://github.com/projecteru2/core/workflows/golangci-lint/badge.svg)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/69918e0a02ae45c5ae7dfc42bad5cfe5)](https://www.codacy.com/gh/projecteru2/core?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=projecteru2/core\u0026amp;utm_campaign=Badge_Grade)\n\nEru is a stateless, flexible, production-ready resource scheduler designed to easily integrate into existing systems. \n\nEru can use multiple engines to run anything for the long or short term. \n\nThis project is Eru Core. The Core use for resource allocation and manage resource's lifetime.\n\nSuggest use go 1.20 and above.\n\n### Testing\n\nRun ` make test `\n\n### Compile\n\n* Run ` make build ` if you want binary.\n* Run `./make-rpm ` if you want RPM for el7. However we use [FPM](https://github.com/jordansissel/fpm) for packing, so you have to prepare it first.\n\n### Developing\n\nRun `make deps` for generating vendor dir.\n\nYou can use our [footstone](https://hub.docker.com/r/projecteru2/footstone/) image for testing and compiling.\n\n#### GRPC\n\nGenerate golang grpc definitions.\n\n```shell\ngo install google.golang.org/protobuf/cmd/protoc-gen-go@latest\ngo install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest\nmake grpc\n```\n\n#### Run it\n\n```shell\n$ eru-core --config /etc/eru/core.yaml.sample\n```\nor\n\n```shell\n$ export ERU_CONFIG_PATH=/path/to/core.yaml\n$ eru-core\n```\n\n### Dockerized Core manually\n\nImage: [projecteru2/core](https://hub.docker.com/r/projecteru2/core/)\n\n```shell\ndocker run -d \\\n  --name eru_core_$HOSTNAME \\\n  --net host \\\n  --restart always \\\n  -v \u003cHOST_CONFIG_DIR_PATH\u003e:/etc/eru \\\n  projecteru2/core \\\n  /usr/bin/eru-core\n```\n\n### Build and Deploy by Eru itself\n\nAfter we implemented bootstrap in eru, now you can build and deploy eru with [cli](https://github.com/projecteru2/cli) tool.\n\n1. Test source code and build image\n\n```shell\n\u003ccli_execute_path\u003e --name \u003cimage_name\u003e http://bit.ly/EruCore\n```\n\nMake sure you can clone code. After the fresh image was named and tagged, it will be auto pushed to the remote registry which was defined in config file.\n\n2. Deploy core itself\n\n```shell\n\u003ccli_execute_path\u003e workloads deploy --pod \u003cpod_name\u003e [--node \u003cnode_name\u003e] --entry core --network \u003cnetwork_name\u003e --image \u003cprojecteru2/core\u003e|\u003cyour_own_image\u003e --file \u003ccore_config_yaml\u003e:/core.yaml [--count \u003ccount_num\u003e] [--cpu 0.3 | --mem 1024000000] http://bit.ly/EruCore\n```\n\nNow you will find core was started in nodes.\n","funding_links":[],"categories":["Scheduler"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprojecteru2%2Fcore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprojecteru2%2Fcore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprojecteru2%2Fcore/lists"}