All Projects → rzrbld → adminio-api

rzrbld / adminio-api

Licence: MIT license
simple admin API for min.io (minio) s3 server

Programming Languages

go
31211 projects - #10 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to adminio-api

minio-multiarch
Nightly builds of Minio server Docker images. Compatible with arm64, armhf/armv7, and amd64.
Stars: ✭ 28 (+16.67%)
Mutual labels:  minio, minio-server
k3s-minio-deployment
Instructions and manifest files for deploying MinIO Object Storage on K3s.
Stars: ✭ 46 (+91.67%)
Mutual labels:  minio, minio-server
Beyond Jupyter
🐍💻📊 All material from the PyCon.DE 2018 Talk "Beyond Jupyter Notebooks - Building your own data science platform with Python & Docker" (incl. Slides, Video, Udemy MOOC & other References)
Stars: ✭ 135 (+462.5%)
Mutual labels:  minio
haskell-code-spot
Visual tool to spot odd runtime behaviour of Haskell programs.
Stars: ✭ 106 (+341.67%)
Mutual labels:  web-ui
foxy-proxy
A Proof of Capacity proxy which supports solo and pool mining upstreams
Stars: ✭ 33 (+37.5%)
Mutual labels:  web-ui
Console
Management UI for MinIO and MinIO operator
Stars: ✭ 159 (+562.5%)
Mutual labels:  minio
hermes
Automates programmables à réaction aux échanges électroniques depuis une boîte IMAP4
Stars: ✭ 15 (-37.5%)
Mutual labels:  web-ui
Minio Go
MinIO Client SDK for Go
Stars: ✭ 1,231 (+5029.17%)
Mutual labels:  minio
Qmui web
An efficient front-end framework for developers building UI on the web.
Stars: ✭ 1,719 (+7062.5%)
Mutual labels:  web-ui
crowbar-core
Core deployment for Crowbar
Stars: ✭ 16 (-33.33%)
Mutual labels:  web-ui
graderjs
💦 Turn your full-stack NodeJS application into a downloadable cross-platform binary. Also works for SPAs, or regular web-sites.
Stars: ✭ 147 (+512.5%)
Mutual labels:  web-ui
Drone Cache
A Drone plugin for caching current workspace files between builds to reduce your build times
Stars: ✭ 194 (+708.33%)
Mutual labels:  minio
S3contents
A S3 backed ContentsManager implementation for Jupyter
Stars: ✭ 175 (+629.17%)
Mutual labels:  minio
bloomery
Web UI for Impala
Stars: ✭ 15 (-37.5%)
Mutual labels:  web-ui
Data Science Stack Cookiecutter
🐳📊🤓Cookiecutter template to launch an awesome dockerized Data Science toolstack (incl. Jupyster, Superset, Postgres, Minio, AirFlow & API Star)
Stars: ✭ 153 (+537.5%)
Mutual labels:  minio
mighty-input
Text input for modern web
Stars: ✭ 20 (-16.67%)
Mutual labels:  web-ui
Dataengineeringproject
Example end to end data engineering project.
Stars: ✭ 82 (+241.67%)
Mutual labels:  minio
Upic
📤uPic is a native, powerful, beautiful and simple picture and file upload tool for macOS.
Stars: ✭ 2,465 (+10170.83%)
Mutual labels:  minio
UTMFW
UTM Firewall on OpenBSD
Stars: ✭ 104 (+333.33%)
Mutual labels:  web-ui
Kafdrop
Kafka Web UI
Stars: ✭ 3,158 (+13058.33%)
Mutual labels:  web-ui

Adminio-api

This is a simple admin "REST" API for minio s3 server. Here is a Web UI for this API - adminio-ui

Docker hub stats GitHub License

OpenAPI v3

see OpenAPI v3 specs at openAPI/openapi_v3.yaml or html version

Run full stack demo

obtain docker-compose.yml from adminio-ui repository. And run it: docker-compose -f docker-compose.yml up

it will bring up:

  • minio server on 9000 port
  • adminio API on 8080 port
  • adminio UI on 80 port

after that you can go to http://localhost and try out

Run with docker

docker run -d \
      -p 8080:8080 \
      -e ADMINIO_HOST_PORT=":8080" \
      -e MINIO_HOST_PORT="localhost:9000" \
      -e MINIO_ACCESS="test" \
      -e MINIO_SECRET="testtest123" \
      rzrbld/adminio-api:latest

Run with Kubernetes/OpenShift/OKD/OCP

go to Helm charts repo

Run manually

  • start minio server
  • set env variables
  • go to src folder and compile with go build main.go, then run ./main binary

Monitoring

Adminio-API expose metrics for Prometheus at /metrics if ADMINIO_METRICS_ENABLE is set to true.

Config Env variables

Variable Description Default
ADMINIO_HOST_PORT which host and port API should listening. This is Iris based API, so you will need to provide 0.0.0.0:8080 for listening on all interfaces localhost:8080
MINIO_HOST_PORT provide a minio server host and port localhost:9000
MINIO_SSL enable or disable ssl false
MINIO_SSL_INSECURE skip SSL verify false
MINIO_SSL_CACERT path to CA certificate ""
MINIO_REGION set minio region us-east-1
MINIO_ACCESS set minio Access Key test
MINIO_SECRET set minio Secret Key testtest123
MINIO_DEFAULT_LOCK_OBLECT_ENABLE set minio default make bucket behaviour with locking object false
ADMINIO_CORS_DOMAIN set adminio-api CORS policy domain *
ADMINIO_OAUTH_ENABLE enable oauth over supported providers false
ADMINIO_OAUTH_PROVIDER oauth provider, for more information see the full list of supported providers github
ADMINIO_OAUTH_CLIENT_ID oauth app client id my-github-oauth-app-client-id
ADMINIO_OAUTH_CLIENT_SECRET oauth app secret my-github-oauth-app-secret
ADMINIO_OAUTH_CALLBACK oauth callback, default listener on /auth/callback http://"+ADMINIO_HOST_PORT+"/auth/callback
ADMINIO_OAUTH_CUSTOM_DOMAIN oauth custom domain, for supported providers (auth0\wso2) -
ADMINIO_COOKIE_HASH_KEY hash key for session cookies. AES only supports key sizes of 16, 24 or 32 bytes NRUeuq6AdskNPa7ewZuxG9TrDZC4xFat
ADMINIO_COOKIE_BLOCK_KEY block key for session cookies. AES only supports key sizes of 16, 24 or 32 bytes bnfYuphzxPhJMR823YNezH83fuHuddFC
ADMINIO_COOKIE_NAME name for the session cookie adminiosessionid
ADMINIO_AUDIT_LOG_ENABLE enable audit log, mae sense if oauth is enabled, othervise set to false false
ADMINIO_METRICS_ENABLE enable default iris/golang metrics and bucket sizes metric on /metrics/ uri path false
ADMINIO_PROBES_ENABLE enable liveness and readiness probes for k8s at /ready/ and /live/ uri path installations false

List of supported oauth providers

  • amazon
  • auth0
  • bitbucket
  • box
  • digitalocean
  • dropbox
  • github
  • gitlab
  • heroku
  • onedrive
  • salesforce
  • slack
  • wso2

Example config

  • prometheus config for adminio metrics: examples/prometheus.yml
  • bucket lifecycle: examples/lifecycle.xml
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].