Ahsan Tanweer

    Ahsan Tanweer

    9 months ago
    Hi everyone! I am having an issue with deploying Prefect UI, and would like to know how to get around it. When I use Helm to deploy prefect on Kubernetes, I cannot set an ingress path as fully qualified URL with a segment. i.e. Something like
    <http://www.domain.com/prefect/ui|www.domain.com/prefect/ui>
    If I do, the static files are being requested from the main domain i.e.
    <http://www.domain.com/css/|www.domain.com/css/>…
    and NOT
    <http://www.domain.com/prefect/ui/css|www.domain.com/prefect/ui/css>
    There is an option for env variable
    PREFECT_SERVER__BASE_URL
    but this doesn’t seem to affect static file In my search for solutions, there seems to be a bug opened exactly for this scenario, and a PR. But it got closed. https://github.com/PrefectHQ/ui/issues/861 Thanks
    Anna Geller

    Anna Geller

    9 months ago
    Hi @Ahsan Tanweer, I’d love to help but this seems to be a very infrastructure-specific DevOps issue that would require looking at your networking setup. I could put you in touch with a team who specializes in infrastructure issues like this and provides more in-depth guidance.
    Ahsan Tanweer

    Ahsan Tanweer

    9 months ago
    Hi Anna! Thank you for replying. To be fair, it’s a normal kubernetes cluster, and I did a regular helm install by following the docs. I think I over did my explanation 😄 This issue (from my understanding) can be fixed, if
    PREFECT_SERVER__BASE_URL
    environment var is used when fetching static files (which I believe is how it was intended, but an oversight was made?). That said, I would love if you can get me in touch with someone who specialises in infrastructure, and if they can guide me if I am approaching this wrong.
    Anna Geller

    Anna Geller

    9 months ago
    Sure. Can you DM me your email address?
    George Coyne

    George Coyne

    9 months ago
    Hey Ahsan, I am checking through this for you
    So after reviewing your request:1. We don’t support what you are describing. I recommend using subdomains if you want a more clear URL for your resources. 2. You can build your own version of the UI with a different base URL, the UI is open source and code can be found at https://github.com/PrefectHQ/ui
    Ahsan Tanweer

    Ahsan Tanweer

    9 months ago
    Hey George! Right now I have done exactly this. Set up UI on another subdomain (outside K8s), configured it for the CORS. It is just that we have operational limitations of subdomains within a Kubernetes cluster. And yes rebuilding the ui container with differing configuration should fix it. It just takes the convenience of everything auto-magically working with official Helm. 😄 I wanted to gauge the plans/limitations for prefect as we use it for our needs. I think I will tinker a bit with the docker images and helm charts to make them fit for my purpose. Thank you for your prompt replies and checking this through! 🙂
    George Coyne

    George Coyne

    9 months ago
    Glad it’s working out for you. Prefect Cloud is significantly easier and more feature rich + free up to the first 20k taskruns monthly. Thanks for your support!