allegroai / clearml-server

ClearML - Auto-Magical CI/CD to streamline your AI workload. Experiment Management, Data Management, Pipeline, Orchestration, Scheduling & Serving in one MLOps/LLMOps solution
https://clear.ml/docs
Other
364 stars 132 forks source link

ClearML Server Behind Reverse Proxy #215

Open Fulladorn opened 10 months ago

Fulladorn commented 10 months ago

I have deployed the ClearML Server through the docker-compose setup in the Single IP (Domain) Configuration. I'm looking to set the service behind an Apache reverse proxy on a single domain such as {domain}.com/clearml/app, {domain}.com/clearml/app, {domain}.com/clearml/files. When I set the Apache reverse proxy the application begins to load but encounters the 404 errors looking at the wrong context {domain}.com/app/...etc... instead of {domain}.com/clearml/web/app/...etc... for static files.

Is there a recommended solution for this use case?

jkhenning commented 10 months ago

Hi @Fulladorn, I am not sure this is supported right now. This requires custom WebApp configuration. Perhaps @shyallegro can offer advice?

shyallegro commented 10 months ago

Hi @Fulladorn take a look at what CLEARML_SERVER_SUB_PATH does here https://github.com/allegroai/clearml-server/blob/2263e7cc1e72ec5136d4f37b94e4fda787fb2128/docker/build/internal_files/entrypoint.sh#L54 setting this environment variable through docker should allow you to manipulate the web app base path.

you can also go through the PRs for more info, here https://github.com/allegroai/clearml-server/pull/121 and here https://github.com/allegroai/clearml-web/pull/21

Fulladorn commented 10 months ago

Hi @Fulladorn take a look at what CLEARML_SERVER_SUB_PATH does here

https://github.com/allegroai/clearml-server/blob/2263e7cc1e72ec5136d4f37b94e4fda787fb2128/docker/build/internal_files/entrypoint.sh#L54

setting this environment variable through docker should allow you to manipulate the web app base path. you can also go through the PRs for more info, here #121 and here allegroai/clearml-web#21

Seems like it's not supported:

docker logs clearml-webserver results in: /opt/clearml/wrapper.sh: line 85: /etc/nginx/default.d/clearml_subpath.conf: No such file or directory