gravitee-io / issues

Gravitee.io - API Platform - Issues
64 stars 26 forks source link

URL Configuration: Management-UI, Portal-UI and Management-API #4550

Open IvoIlic95 opened 3 years ago

IvoIlic95 commented 3 years ago

Good morning

For now I am using a old deployment of Elasticsearch which works fine.

Now I am struggling to configure the Management-UI, Portal-UI and the Management-Api who are dependent on this.

In OpenShift you can expose a route (I exposed a route for the Management-Api). Do I need to paste this route to the Management-UI and Portal-UI?

Here is what I have done:

  1. Expose a route for the Management-Api
  2. Paste the exposed route with the right path to the Environment variables of the Management-UI and Portal-UI.

Now I do not know if I have to expose a new route for the Portal-UI and Management-UI.

Here are some pictures which shows what I have done or more to say configured so far:

Management-API: image

image

Management-UI: image

Portal-UI: image

I have tried this example to reproduce: https://github.com/gravitee-io/gravitee-docker/blob/master/platform/3.x/docker-compose.yml#L139 but without any success.

The question is, how do I know which route I need to create and paste to the Portal-UI and Management-UI so that I can access the web interface for Gravitee 3.*.

Kind regards, Ivo

aelamrani commented 3 years ago

Hi @IvoIlic95

Why not rely on our helm chart as described here: https://medium.com/graviteeio/gravitee-io-apim-3-x-on-gke-3abdf3c34097 ?

IvoIlic95 commented 3 years ago

Good morning

Yeah thank you for the Link but this is for Kubernetes and I am using Red Hat OpenShift environment. The info provided in the link just shows me how to install Gravitee in Kubernetes Helm. What I need is a description on how to configure Gravitee on Red Hat OpenShift. The Gateway, Management-Api, Management-UI and Portal-UI are successfully installed but I can not access them - especially the Gravitee Portal-UI or the Management-UI - due to configuration problems.

As you can see my Pods are running but the configuration for the Management-Api, Portal-Ui and Management-Ui does not work. I can not access them because I do not know which URLs need to be created and pasted to the environment variables.

Kind regards, Ivo

aelamrani commented 3 years ago

Hi,

Ok so the Portal-Ui and Management-Ui are just about static files served, so you just need to serve and expose them publicly.

The Gateway and Management-Api has to be exposed publicly also to be accessed either by your applications (for the gateway) or by your browser (for the UIs).

Is it clearer?

IvoIlic95 commented 3 years ago

Okay, I will try it but I just recognized that the Management-UI and Portal-UI have an Error.

2020-11-05T11:46:47Z apim-portal-ui-19-pfg7b /bin/confd[8]: FATAL open /usr/share/nginx/html/assets/.config.json358122129: permission denied

2020-11-05T11:46:20Z apim-management-ui-19-gqtsg /bin/confd[8]: FATAL open /usr/share/nginx/html/.constants.json237052079: permission denied

This could be also the reason why it is not working like it should.

aelamrani commented 3 years ago

Yes, most probably as it contains the base path URLs of your management/portal API.

IvoIlic95 commented 3 years ago

Hmm okay, well I need to figure out how to give this POD the rights to use this folder. I will contact you when something occures.

aelamrani commented 3 years ago

I think this might be due to Openshift v3 which uses a random user inside the container.

I remember we had to change the permission or something like that.

IvoIlic95 commented 3 years ago

Nice to know! Currently I am doing research how to give this POD rights to use the /bin/confd/ folder.

aelamrani commented 3 years ago

Here what we have done for this: https://github.com/gravitee-io/gravitee-docker/blob/2cd006dd1072ce20eec653ef9b4f39c39d700c06/images/management-ui/Dockerfile-nightly#L41

IvoIlic95 commented 3 years ago

Interesting, now how do I give permission to the POD with chmod and/or chgrp so that it can access /bin/confd/ without any problems?

It is a complete new environment for me to work with such commands.

IvoIlic95 commented 3 years ago

Good morning

In the last days I tried several commands to grant a access to this path. Sadly nothing worked for me. Which path - /bin/confd or /usr/share/nginx/html/.constants.json210443772 - should I give permissions? Moreover, what command should I run to grant access to one of these two paths?

2020-11-11T08:07:38Z apim-management-ui-20-c5chv /bin/confd[8]: FATAL open /usr/share/nginx/html/.constants.json210443772: permission denied

Hope you can help.

Kind regards, Ivo

Edit: I added this command into a build for the management-ui: RUN chmod -R 777 /var/log/nginx /var/cache/nginx/ \ && chmod -v 777 /etc/nginx/*

RUN chmod -R 777 /bin/confd

Still I am getting this error: 2020-11-11T11:30:16Z apim-management-ui-26-js5jk /bin/confd[8]: FATAL open /usr/share/nginx/html/.constants.json852422288: permission denied

gustavovalverde commented 3 years ago

@aelamrani I'm getting this same error with AM, after helm install graviteeio-am graviteeio/am -f am/values.yaml

This happens on GKE (Google Kubernetes Engine). Is there a workaround for this?