yokawasa/azure-functions-python-samples

Kudu tools not opening

bsnithin44 opened this issue · 6 comments

Hi @yokawasa

The hyperlink in platform features to kudu tools is not responding and also
https://(your-function-app-name).scm.azurewebsites.net/ is not working.

Do you know what could be the reason?

its python function app

Thank you

@bsnithin44
Are you using Linux Consumption plan? There is no Kudu site on Linux Consumption plan. I don't know the reason.

@yokawasa
Yes, I am using Linux Consumption plan.

I need to perform the following operation for opencv to work.

apt update && apt install -y libsm6 libxext6

Do you know any workaround for this?
Thank you

snobu commented

You can't apt install straight onto the worker. Build a Docker image instead and install packages via Dockerfile. See this - https://github.com/Azure/azure-functions-docker-python-sample

Example:

# Dockerfile snippet

RUN apt-get update && apt-get install -y \
    libsm6 \
    libxext6

If you're not doing something terribly complex with OpenCV, try to do it in Pillow (PIL) instead. Pillow doesn't require extra dependencies installed (you can ditch building the Docker image). A sample here.

But building a docker image will be only for app service plan right?. I am aware that we can do with docker.

I just wanted to know if there is any way to do it while using Consumption plan and CODE instead of docker image

snobu commented

That's correct, right now a dedicated plan is required for custom images.

https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-function-linux-custom-image#create-a-linux-app-service-plan

Create a Linux App Service plan

Linux hosting for Functions is currently not supported on consumption plans. You have to host Linux container apps in a Linux App Service plan.

@bsnithin44
In summary, running custom images as well as Kudu site is not supported in Linux Consumption plan. Suggestions here are to use App service plan or try to use other libraries if possible to achieve the same goal that you could with OpenCV as @snobu commented above.

I'm closing this but please feel free to re-open if you need further discussion