Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minio Operator Path Prefix Change #1962

Closed
jyousefpour1 opened this issue Feb 1, 2024 · 4 comments
Closed

Minio Operator Path Prefix Change #1962

jyousefpour1 opened this issue Feb 1, 2024 · 4 comments
Assignees

Comments

@jyousefpour1
Copy link

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Minio Operator helm chart does not allow changing the path prefix of the console ui to something different than /login in the values.yaml when connected to a reverse proxy
Describe the solution you'd like
A clear and concise description of what you want to happen.
values.yaml allow a new variable to change path prefix of the minio-operator dashboard

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Have considered setting the MINIO_SERVER_URL but it defaults to minio-dashboard with any prefix supplied after /

Additional context
Add any other context or screenshots about the feature request here.

@YuriyKrasilnikov
Copy link

@jyousefpour1 After small investigating the problem, I have identified the root cause and a potential solution.

The issue stems from the presence of the tag in the operator/web-app/public/index.html file. This tag forces all relative links and resource paths within the web application to be resolved from the site root /, instead of the path prefix where the Minio Operator is deployed when running behind a reverse proxy.

@cniackz cniackz self-assigned this Mar 18, 2024
@cniackz
Copy link
Contributor

cniackz commented Mar 18, 2024

Hello jyousefpour1, thank you for raising this issue. I believe it is related to the following:

The solution may lie within the environment variables of the console deployment for the operator:

apiVersion: apps/v1
kind: Deployment
spec:
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/instance: minio-operator-console
      app.kubernetes.io/name: operator
  template:
    metadata:
      creationTimestamp: null
      labels:
        app.kubernetes.io/instance: minio-operator-console
        app.kubernetes.io/name: operator
    spec:
      containers:
        - name: operator
          image: docker.io/minio/operator:v5.0.4-13-g041a74ca
          args:
            - ui
            - '--certs-dir=/tmp/certs'
          ports:
            - name: http
              containerPort: 9090
              protocol: TCP
            - name: https
              containerPort: 9443
              protocol: TCP
          env:
            - name: OPERATOR_SUBPATH
              value: /minio-operator/

Particularly, in reference to this section:

          env:
            - name: OPERATOR_SUBPATH
              value: /minio-operator/

This can also be accomplished via the Helm chart, in the values file under the console section:

  ###
  # An array of environment variables to pass to the Operator Console deployment.
  # Pass an empty array to start Operator Console with defaults.
  env: [ ]

Please let us know if this is helpful for you

@BigFlagBurito
Copy link

I have the same problem. could the problem be solved?
I am trying to reach minio via a subpath (in kubernetes), but I get an error in the console in the browser after adding OPERATOR_SUBPATH.
SyntaxError: Unexpected token '<' Manifest: Line: 1, column: 1, Syntax error.
This seems to be the same problem as described in #1607. Only their solution also refers to #1616.
I just don't know what to do, I've been going round in circles for hours, and there doesn't seem to be any documentation about it either.

@ramondeklein
Copy link
Contributor

MinIO operator UI will be removed from v6. Operators are commonly used to manage deployments via Kubernetes resources and are not typically used via a UI. It's not common for operators to have a web interface and it requires a lot of resources to bring all operator features to the web interface. The UI has been lagging behind for a while, so we finally decided to remove it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants