azureapache-supersetazure-container-instancesazure-storage-accountazure-storage-files

Running Superset on Azure container Instance


I am trying to run superset on Azure container Instance with volume mapping on Azure file Share storage. When I build the container with below command the container instance gets on the running state but I can't launch the superset url.

az container create --resource-group $ACI_PERS_RESOURCE_GROUP --name superset01 --image superset-image:v1 --dns-name-label superset01 --ports 8088 --azure-file-volume-account-name $ACI_PERS_STORAGE_ACCOUNT_NAME --azure-file-volume-account-key $STORAGE_KEY --azure-file-volume-share-name $ACI_PERS_SHARE_NAME --azure-file-volume-mount-path "/app/superset_home/"

Also I can see the volume map files are created on the file share but it doesn't grow to the initial size of superset.db.

Name                 Content Length    Type    Last Modified
-------------------  ----------------  ------  ---------------
cache/                                 dir
superset.db          0                 file
superset.db-journal  0                 file

Any inputs on this please?


Solution

  • I tested in my environment, and it is working fine for me. I am using superset images from docker hub and pushed to container registry.

    Use below command to pull the superset images from dockerhub

    docker pull apache/superset
    

    enter image description here

    Tag the Superset images to push in Container registry

    docker tag 15e66259003c testmyacr90.azurecr.io/superset
    

    enter image description here

    Now login in the conatiner registry

    docker login testmyacr90.azurecr.io
    

    And then push the images to Container Repositoty

    enter image description here enter image description here

    You can use the below cmdlet to create the Container Instace and mount to a FileShare as well

    az container create --resource-group $ACI_PERS_RESOURCE_GROUP --name mycontainerman --image $ACR_LOGIN_SERVER/superset:latest --registry-login-server $ACR_LOGIN_SERVER --registry-username $ACR_USERNAME --registry-password $ACR_PASSWORD --dns-name-label aci-demo-7oi --ports 80 --azure-file-volume-account-name $ACI_PERS_STORAGE_ACCOUNT_NAME --azure-file-volume-account-key $STORAGE_KEY --azure-file-volume-share-name $ACI_PERS_SHARE_NAME --azure-file-volume-mount-path /aci/logs/
    

    enter image description here enter image description here

    Would suggest you use FDQN or Public IPAddress of container instance to hit on browser and able to see response from container instance.

    Update-----

    I have mounted the fileShare at "/app/superset_home/ as you did and getting the same output like you.

    enter image description here

    Based on above picture would suggest you to do not mount the fileshare at /app/superset_home/ because here superset.db and superset.db-journal resides. if we are mounting to this location there is conflict happing. So better to suggest you mount at /aci/logs/ or any location you want rather than /app/superset_home/

    Update 2-------

    As I am using the same storage account for mount the vloume at /aci/logs/ as previously volume mounted to /app/superset_home/.

    Getting the same error like you

    enter image description here

    Soultion: To avoid thease kind of issue create a new storage accout and file share with in and mount the volume at /aci/logs/.

    Once i did like that i sorted my issue

    enter image description here