{"id":19139738,"url":"https://github.com/openelb/console","last_synced_at":"2025-10-15T06:36:14.004Z","repository":{"id":49778160,"uuid":"507962716","full_name":"openelb/console","owner":"openelb","description":"OpenELB Console is the web-based UI for OpenELB.","archived":false,"fork":false,"pushed_at":"2024-06-21T23:23:01.000Z","size":2187,"stargazers_count":5,"open_issues_count":6,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-06T23:15:16.448Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/openelb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"docs/code-of-conduct.md","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,"zenodo":null}},"created_at":"2022-06-27T15:25:15.000Z","updated_at":"2023-07-05T03:16:27.000Z","dependencies_parsed_at":"2024-05-02T04:24:43.381Z","dependency_job_id":"ebcc355e-b485-4d1b-9ebf-e24c72d0c79e","html_url":"https://github.com/openelb/console","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/openelb/console","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openelb%2Fconsole","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openelb%2Fconsole/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openelb%2Fconsole/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openelb%2Fconsole/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openelb","download_url":"https://codeload.github.com/openelb/console/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openelb%2Fconsole/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279058416,"owners_count":26094844,"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-10-15T02:00:07.814Z","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":[],"created_at":"2024-11-09T07:14:52.952Z","updated_at":"2025-10-15T06:36:13.983Z","avatar_url":"https://github.com/openelb.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OpenELB Console\n\nOpenELB Console is the web-based UI for OpenELB.\n\n## Getting Started\n\nConsole should be always used with OpenELB. \nThe following will show you how to build console from source code.\n\n### Prerequisite\n\n#### Node.js\n\nConsole is written using Javascript. If you don't have a Node.js development environment, please [set it up](https://nodejs.org/en/download/). The minimum version required is 14.18.\n\n#### Yarn\n\nWe use [Yarn](https://yarnpkg.com/) to do package management. If you don't have yarn, use the following to install:\n\n```\nnpm install -g yarn@1.22.19\n```\n\nThe minimum version required is 1.22.19, but you can use a newer version.\n\n#### [Optional] Docker\n\nThis is optional. If you just want to test and build on your local environment, there is no need to install docker. Otherwise, you need to install it.\n\n- [Install on Mac](https://docs.docker.com/desktop/mac/install/)\n- [Install on Windows](https://docs.docker.com/desktop/windows/install/)\n- [Install on Ubuntu](https://docs.docker.com/engine/install/ubuntu/)\n\n#### [Optional] Make\n\nThis is optional too, we use `make` to reduce hand work, but it's totally ok without it.\n\n## How to debug \n\n* Clone the repository, and run `yarn`\n\n```sh\ngit clone https://github.com/openelb/console.git\ncd console/\nyarn\n```\n* Make sure there is openelb-manager service of type nodeport in your cluster, if not create it:\n```yaml\nkind: Service\napiVersion: v1\nmetadata:\n  name: openelb-manager\n  namespace: openelb-system\n  labels:\n    app: openelb-manager\nspec:\n  ports:\n    - name: server\n      protocol: TCP\n      port: 80\n      targetPort: 8080\n      nodePort: 30871\n  selector:\n    app: openelb-manager\n  type: NodePort\n```\n* Add openelb-manager service address into this function([createURL](https://github.com/openelb/console/blob/ea00c35e70b492990379bfebc41b27174265a083/src/utils/request.js#L98)) as follows:\n\n  \u003e the default port  of openelb-manager service in k8s is `30871` .\n\n```\nreturn `http://${your service machine ip}:${openelb-manager service address}:${port}/${path.trimLeft('/')}`\n```\n\n* Run command:\n\n```\nyarn start\n```\n\n\u003e If you have trouble downloading the dependencies, try the following\n\u003e\n\u003e `yarn config set registry https://registry.npmmirror.com`\n\nnow, you can debug it in chrome browser.\n\n## How to build\n\n### How to build container image\n\nJust run the following command with your real `REPO` address.\n\n```\nREPO=yourawesomerepo make container\n```\n\n### Run in docker\n\n1. Modify `server.domain:port` in `deploy/default.conf` to the actual deployment address of openelb console.\n2. Mount the configuration file into the docker container\n3. Expose container port 8088\n\n```\ndocker run --rm -d --name=openelb-console -v ${PWD}/deploy/default.conf:/etc/nginx/conf.d/default.conf -p 8088:8088 kubesphere/openelb-console:master\n```\n\nYou can access openelb-console using ${hostIP}:8088. *(hostIP is the ip of the node where the command is run)*\n\n### Run in kubernetes\n\nCheck whether the pod and service port information correspond to each other *(You may have modified the port listened by openelb-manager during installation)*. If there is no problem, install it into kubernetes using kubectl.\n\nUse the service of nodeport type to expose the openelb-console service. Port 30870 is used by default.\n\n```\nkubectl apply -f deploy/console.yaml\n```\n\n### Get the frontend bundle file\n\nIf you want to get the frontend file in local machine, you can run:\n\n```\nyarn build\n```\nthe bundle file will exist in the `build` directory.\n\n## How to submit a PR\n\nFollow [Development Workflow](/docs/development-workflow.md) to commit your codes.\n\n## Support, Discussion, and Community\n\nIf you need any help with OpenELB, please join us at [Slack Channel](https://join.slack.com/t/kubesphere/shared_invite/zt-1ilxbsp39-t4ES4xn5OI0eF5hvOoAhEw).\n\nPlease submit any OpenELB Console bugs, issues, and feature requests to [OpenELB Console GitHub Issue](https://github.com/openelb/console/issues).\n\n## Contributing to the project\n\nWelcome to contribute to OpenELB Console, see [Contributing Guide](CONTRIBUTING.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenelb%2Fconsole","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenelb%2Fconsole","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenelb%2Fconsole/lists"}