Skip to content
Snippets Groups Projects
Verified Commit 94e2fb47 authored by Sheogorath's avatar Sheogorath :european_castle:
Browse files

docs(minio): Add description and some details

parent fd5dbce7
No related branches found
No related tags found
No related merge requests found
Pipeline #19091 passed
......@@ -16,6 +16,7 @@
- [Blog](apps/blog.md)
- [Keycloak](apps/keycloak.md)
- [Mastodon](apps/mastodon.md)
- [Minio](apps/minio.md)
- [Infrastructure Components](components/README.md)
- [calico](components/calico.md)
- [cert-manager](components/cert-manager.md)
......
# Minio
Minio provides S3-compatible object storage for all kinds of things. It's deployed on the [NAS](../hardware/nas.md) and stores bulk storage.
<iframe width="100%" height="480" src="https://www.youtube-nocookie.com/embed/m0suyfBuaDg" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
## Static Webhosting
Static webhosting is achived by building a webpage that links to full filenames like `example.html` as part of the URL.
Ingress-nginx is configured to handle the domain:
```yaml
apiVersion: v1
kind: Service
metadata:
name: s3
spec:
type: ExternalName
externalName: nas.example.net
ports:
- port: 9000
name: https
protocol: TCP
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: example
annotations:
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/app-root: /index.html
nginx.ingress.kubernetes.io/rewrite-target: /example/$1
spec:
rules:
- host: example.com
http:
paths:
- path: /(.*)
pathType: Prefix
backend:
service:
name: s3
port:
number: 9000
tls:
- hosts:
- example.com
secretName: example-tls
```
Finally a bucket `example` is created and the website is copied inside:
```bash
mc alias set minio https://nas.example.net:9000 example-access-key example-access-secret
mc mirror --remove --overwrite ./ minio/example
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment