{"id":20535735,"url":"https://github.com/e2fyi/minio-web","last_synced_at":"2025-10-09T17:17:09.096Z","repository":{"id":46118468,"uuid":"180504288","full_name":"e2fyi/minio-web","owner":"e2fyi","description":"Web server for S3 compatible storage","archived":false,"fork":false,"pushed_at":"2024-04-23T16:07:05.000Z","size":26542,"stargazers_count":24,"open_issues_count":3,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-27T20:51:18.365Z","etag":null,"topics":["go","golang","minio","proxy-server","s3","webserver"],"latest_commit_sha":null,"homepage":"","language":"Go","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/e2fyi.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":"2019-04-10T04:52:52.000Z","updated_at":"2025-01-03T23:14:48.000Z","dependencies_parsed_at":"2024-04-23T17:07:14.129Z","dependency_job_id":null,"html_url":"https://github.com/e2fyi/minio-web","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e2fyi%2Fminio-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e2fyi%2Fminio-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e2fyi%2Fminio-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e2fyi%2Fminio-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/e2fyi","download_url":"https://codeload.github.com/e2fyi/minio-web/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248837288,"owners_count":21169374,"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":["go","golang","minio","proxy-server","s3","webserver"],"created_at":"2024-11-16T00:33:43.790Z","updated_at":"2025-10-09T17:17:04.037Z","avatar_url":"https://github.com/e2fyi.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# github.com/e2fyi/minio-web\n\n[![godoc](https://img.shields.io/badge/godoc-reference-5272B4.svg?style=flat-square \"godoc\")](https://godoc.org/github.com/e2fyi/minio-web/pkg)\n[![dockerhub](https://img.shields.io/badge/dockerhub-e2fyi%2Fminio--web-5272B4.svg?style=flat-square \"dockerhub\")](https://hub.docker.com/r/e2fyi/minio-web)\n[![Docker Repository on Quay](https://quay.io/repository/e2fyi/minio-web/status \"Docker Repository on Quay\")](https://quay.io/repository/e2fyi/minio-web)\n![GitHub tag (latest SemVer)](https://img.shields.io/github/tag/e2fyi/minio-web.svg?style=flat-square)\n\nA web server proxy for any S3-compatible storage.\n\n## Quickstart\n\n### Environment variables\n\n```bash\n# where config file is located\nCONFIG_FILE_PATH=configs/config.json\n\n# port for minio-web to listen to\nSERVER_PORT=8080\n# path to ssl cert and key files\nSERVER_SSL_CERT=\nSERVER_SLL_KEY=\n\n# endpoint to call for the s3 compatible storage\nMINIO_ENDPOINT=s3.amazonaws.com\n# access key and secret key\nMINIO_ACCESSKEY=\nMINIO_SECRETKEY=\n# ssl when calling endpoint\nMINIO_SECURE=true\n# aws s3 bucket region (optional)\nMINIO_REGION=\n\n# Extensions #\n# bucket to serve if provided (http://minio-web/abc =\u003e endpoint/bucketname/abc)\n# if not provided (http://minio-web/abc/efg =\u003e endpoint/abc/efg) where abc is the bucket\nEXT_BUCKETNAME=\n\n# prefix to add to query.\n# e.g. EXT_PREFIX=foo/\n# query to endpoint/abc -\u003e query EXT_BUCKETNAME/foo/ab\nEXT_PREFIX=\n\n# if provided a list of default index files to return\n# i.e http://minio-web/abc/ =\u003e http://minio-web/abc/index.html\nEXT_DEFAULTHTML=index.html,README.md\n\n# if provided, returns a default favicon if backend does not have one.\nEXT_FAVICON=assets/favicon.ico\n\n# if set, list the folders inside a folder\nEXT_LISTFOLDER=true\n# objects that match the glob expression will be listed. e.g. markdown files\nEXT_LISTFOLDEROBJECTS=*.{md,html,jpg,jpeg,png,txt}\n\n# if provided, renders any markdown resources as HTML with the template.\n# template MUST have a placeholder {{ .Content }}\nEXT_MARKDOWNTEMPLATE=assets/md-template.html\n```\n\n### Config file\n\n```json\n{\n  \"server\": {\n    \"port\": 8080,\n    \"ssl\": {\n      \"cert\": \"\",\n      \"key\": \"\"\n    }\n  },\n  \"minio\": {\n    \"endpoint\": \"s3.amazonaws.com\",\n    \"accesskey\": \"\",\n    \"secretkey\": \"\",\n    \"secure\": false,\n    \"region\": \"\"\n  },\n  \"ext\": {\n    \"bucketname\": \"\",\n    \"defaulthtml\": \"index.html,README.md\",\n    \"favicon\": \"assets/favicon.ico\",\n    \"markdowntemplate\": \"assets/md-template.html\",\n    \"listfolder\": true,\n    \"listfolderobjects\": \"*.{md,html,jpg,jpeg,png,txt}\"\n  }\n}\n```\n\n### Run demo locally\n\n```bash\n# starts a minio server\n./scripts/start-minio-server.sh\n\n# starts minio-web service\ngo run .\n```\n\nAlternatively, with docker compose:\n\n```bash\n# you can access the minio-store at localhost:9000\n# and the minio-web at localhost:8080\ndocker-compose up -d\n```\n\n### Docker image\n\nImage will now available in ~[Dockerhub](https://hub.docker.com/r/e2fyi/minio-web)~, [Quay.io](https://quay.io/repository/e2fyi/minio-web) and [Github registry](https://github.com/e2fyi/minio-web/pkgs/container/minio-web).\n\n- ~`e2fyi/minio-web:\u003ctag\u003e`~\n- `quay.io/e2fyi/minio-web:\u003ctag\u003e`\n- `ghcr.io/e2fyi/minio-web:\u003ctag\u003e`\n\n\u003e Free tier for docker hub automated build has been [discontinued](https://www.docker.com/blog/changes-to-docker-hub-autobuilds/).\n\u003e Until I find time to setup GitHub actions, no new tags will be pushed to docker hub.\n\u003e i.e. All the latest releases can only be found in Quay.io and ghcr.io (thanks @PseudoResonance)\n\n```bash\n# build locally\ndocker build -t e2fyi/minio-web:latest .\n\n# pull from dockerhub\ndocker pull e2fyi/minio-web:latest\n\n# run docker container\ndocker run --rm -ti \\\n    -p 8080:8080 \\\n    --env-file .envfile \\\n    e2fyi/minio-web:latest\n```\n\n## Kubernetes deployment (Kustomize)\n\n[kustomize](https://github.com/kubernetes-sigs/kustomize) k8s manifest for\n`minio-web` can be found in [manifest/](./manifest).\n\n## GoDoc\n\n- [minio-web](https://godoc.org/github.com/e2fyi/minio-web/)\n- [github.com/e2fyi/minio-web/pkg/app](https://godoc.org/github.com/e2fyi/minio-web/pkg/app)\n- [github.com/e2fyi/minio-web/pkg/core](https://godoc.org/github.com/e2fyi/minio-web/pkg/core)\n- [github.com/e2fyi/minio-web/pkg/minio](https://godoc.org/github.com/e2fyi/minio-web/pkg/minio)\n- [github.com/e2fyi/minio-web/pkg/ext](https://godoc.org/github.com/e2fyi/minio-web/pkg/ext)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fe2fyi%2Fminio-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fe2fyi%2Fminio-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fe2fyi%2Fminio-web/lists"}