{"id":13588733,"url":"https://github.com/rzrbld/adminio-ui","last_synced_at":"2025-04-08T06:32:42.136Z","repository":{"id":37596302,"uuid":"215154741","full_name":"rzrbld/adminio-ui","owner":"rzrbld","description":"a simple admin ui for min.io (minio) s3 server","archived":false,"fork":false,"pushed_at":"2023-02-03T05:02:12.000Z","size":53226,"stargazers_count":85,"open_issues_count":6,"forks_count":12,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-11-06T08:47:41.284Z","etag":null,"topics":["adminio-api","adminio-ui","minio","minio-server","s3","web-ui"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/rzrbld.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-14T22:13:30.000Z","updated_at":"2024-04-08T10:18:01.000Z","dependencies_parsed_at":"2023-02-12T11:31:27.645Z","dependency_job_id":null,"html_url":"https://github.com/rzrbld/adminio-ui","commit_stats":null,"previous_names":[],"tags_count":44,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rzrbld%2Fadminio-ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rzrbld%2Fadminio-ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rzrbld%2Fadminio-ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rzrbld%2Fadminio-ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rzrbld","download_url":"https://codeload.github.com/rzrbld/adminio-ui/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247792159,"owners_count":20996878,"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":["adminio-api","adminio-ui","minio","minio-server","s3","web-ui"],"created_at":"2024-08-01T15:06:53.487Z","updated_at":"2025-04-08T06:32:37.123Z","avatar_url":"https://github.com/rzrbld.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","others"],"sub_categories":[],"readme":"# Adminio-ui\nThis is a Web UI for [minio](https://min.io) s3 server.\nWeb UI works on top of REST API - [adminio-API](https://github.com/rzrbld/adminio-api)\nBuild with [Angular](https://angular.io) and [mdbootstrap](https://mdbootstrap.com)\n\n![Docker hub stats](https://img.shields.io/docker/pulls/rzrbld/adminio-ui?style=flat-square) ![GitHub License](https://img.shields.io/github/license/rzrbld/adminio-ui?style=flat-square)\n\n![screenshot1](https://raw.githubusercontent.com/rzrbld/adminio-ui/master/images/image.gif)\n\n### Web UI abilities:\n| Kind   |      Create      |  List  | Update | Delete |\n|--------------|:-----------------------|:-----------:|:-----------:|:-----------:|\n| Bucket |  V  | V | add/remove events, change lifecycle, manage quota, tags, policy, encryption | V |\n| User | V | V | update password, change policy | V |\n| Policy |  V | V | V | V |\n| Group |  V | V | add users to group, remove users, change policy | only if group is empty (has no members) |\n\n\n### Extra features:\n- create multiple buckets at once\n- fully editable policy constructor\n- copy policies\n- upload and download bucket lifecycles and policies\n- bucket quota\n\n### Run full stack demo\n\n`` docker-compose -f docker-compose.yml up ``\n\nit will bring up:\n\n - minio server on 9000 port\n - adminio API on 8080 port\n - adminio UI on 80 port\n\nafter that you can go to `` http://localhost `` and try out\n\n#### Production stack\n\nFor a production ready _demo_, please see [docker-stack.yml](docker-stack.yml) to boot up the following:\n\n - adminio-ui\n - adminio-api\n \nProvided configuration will run the UI and the API on the same hostname. While the API component is exposed on a `/api` route to avoid an otherwise necessary CORS setup.\n\nThe stack requires the following components to be setup externally:\n\n - Docker Swarm (though minor with minor changes, this works with Compose)\n - a running and to the stack accessible MinIO\n - Traefik v1.7 (configured via labels)\n - Traefik ingress via an attachable (Docker) network named `public`\n\n### Run in docker\n\nBefore running make sure that you minio server and adminio-api is started.\n\n`` docker run rzrbld/adminio-ui:latest ``\n\nThis example run only for test purposes, unless you running UI and API of adminio on the same server.\n\n### Run in real environment\n#### Docker\n| Environment | Description | Default |\n| --- | --- | --- |\n|  API_BASE_URL  | [adminio-api](https://github.com/rzrbld/adminio-api) REST endpoint | http://localhost:8080  |\n|  ADMINIO_PROD  |  production mode, can be ``true`` or ``false``  | ``false``  |\n|  ADMINIO_MULTI_BACKEND  | multibackend mode, can be ``true`` or ``false``  | ``false``  |\n|  ADMINIO_BACKENDS  |  json obj with names and urls of all you [adminio-api](https://github.com/rzrbld/adminio-api) instances  |  ``[{\"name\":\"myminio\",\"url\":\"http://localhost:8080\"},{\"name\":\"localhost\",\"url\":\"http://localhost:8081\"},{\"name\":\"error\",\"url\":\"http://localhost:8082\"}]`` |\n|  NGX_ROOT_PATH | nginx location variable | `/` |\n|  NGX_PORT | nginx port variable | `80` |\n\nIn real life cases you'll need to change this environment variables at `` Dockerfile `` - `` API_BASE_URL `` which points to [adminio-api](https://github.com/rzrbld/adminio-api) REST endpoint and `` ADMINIO_PROD `` which can be set to `` true `` or `` false ``.\n\nIf you run multiple instances of [adminio-api](https://github.com/rzrbld/adminio-api) you can set `` ADMINIO_MULTI_BACKEND `` to ``true`` and fill  `` ADMINIO_BACKENDS `` example with needed urls and names. Please note - in this case you still need points ``API_BASE_URL`` to one of this instances. And then build a docker image.\n#### Kubernetes/OpenShift/OKD/OCP\ngo to [Helm chart](https://github.com/rzrbld/adminio-helm) repo\n\n#### npm build\nMethod that described above also works if you build with `` npm run build ``.\nIn this case example command will be look like this ``$ export API_BASE_URL=http://example.com:8099 \u0026\u0026 export ADMINIO_PROD=false \u0026\u0026 npm run build `` after that distributive can be obtained at `` ./dist `` folder.\n\n#### ng build\nIf you build project with `` ng build `` you will need to set [adminio-api](https://github.com/rzrbld/adminio-api) REST endpoint at `` apiBaseUrl `` variable in file `` src/environments/environment.ts `` or `` src/environments/environment.prod.ts ``.\n\nby default `` apiBaseUrl variable `` is set to `` http://localhost:8080 ``.\n\n### Developement\n#### npm start\nin this case example command will be look like this - ``$ export API_BASE_URL=http://example.com:8099 \u0026\u0026 export ADMINIO_PROD=false \u0026\u0026 npm start `` it will bring up a dev server on port 4201. Navigate to `http://localhost:4201/`. The app will automatically reload if you change any of the source files.\n\n#### ng serve\nyou will need to set [adminio-api](https://github.com/rzrbld/adminio-api) REST endpoint at `` apiBaseUrl `` variable in file `` src/environments/environment.ts `` or `` src/environments/environment.prod.ts `` then run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frzrbld%2Fadminio-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frzrbld%2Fadminio-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frzrbld%2Fadminio-ui/lists"}