运行 Azure 容器实例上的超集
Running Superset on Azure container Instance
我正在尝试 运行 在 Azure 容器实例上使用 Azure 文件共享存储上的卷映射进行超集。当我使用以下命令构建容器时,容器实例进入 运行ning 状态,但我无法启动超集 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/"
我还可以看到在文件共享上创建了卷映射文件,但它不会增长到 superset.db 的初始大小。
Name Content Length Type Last Modified
------------------- ---------------- ------ ---------------
cache/ dir
superset.db 0 file
superset.db-journal 0 file
请问有什么意见吗?
我在我的环境中进行了测试,它对我来说工作正常。我正在使用 superset images 来自 docker hub 并推送到容器注册表。
使用下面的命令从 dockerhub
中拉取超集图像
docker pull apache/superset
标记 Superset 映像以推送到 Container registry
docker tag 15e66259003c testmyacr90.azurecr.io/superset
现在登录容器注册表
docker login testmyacr90.azurecr.io
然后将镜像推送到Container Repositoty
您可以使用以下 cmdlet 创建 Container Instace
并安装到 FileShare
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/
建议您使用容器实例的FDQN
或Public IPAddress
来访问浏览器并能够查看容器实例的响应。
更新-----
我已经像您一样在 "/app/superset_home/
上安装了 fileShare,并获得了与您相同的输出。
根据上图建议您不要在 /app/superset_home/
挂载 fileshare 因为这里 superset.db
和 superset.db-journal
驻留。如果我们安装到这个位置,就会发生冲突。所以最好建议你安装在 /aci/logs/
或任何你想要的位置而不是 /app/superset_home/
更新2------
因为我使用相同的存储帐户将 vloume 挂载到 /aci/logs/
,因为之前的卷挂载到 /app/superset_home/
。
遇到和你一样的错误
解决方案:为避免此类问题,创建一个新的存储帐户和文件共享,并将卷安装在 /aci/logs/
。
一旦我这样做了,我就解决了我的问题
我正在尝试 运行 在 Azure 容器实例上使用 Azure 文件共享存储上的卷映射进行超集。当我使用以下命令构建容器时,容器实例进入 运行ning 状态,但我无法启动超集 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/"
我还可以看到在文件共享上创建了卷映射文件,但它不会增长到 superset.db 的初始大小。
Name Content Length Type Last Modified
------------------- ---------------- ------ ---------------
cache/ dir
superset.db 0 file
superset.db-journal 0 file
请问有什么意见吗?
我在我的环境中进行了测试,它对我来说工作正常。我正在使用 superset images 来自 docker hub 并推送到容器注册表。
使用下面的命令从 dockerhub
中拉取超集图像docker pull apache/superset
标记 Superset 映像以推送到 Container registry
docker tag 15e66259003c testmyacr90.azurecr.io/superset
现在登录容器注册表
docker login testmyacr90.azurecr.io
然后将镜像推送到Container Repositoty
您可以使用以下 cmdlet 创建 Container Instace
并安装到 FileShare
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/
建议您使用容器实例的FDQN
或Public IPAddress
来访问浏览器并能够查看容器实例的响应。
更新-----
我已经像您一样在 "/app/superset_home/
上安装了 fileShare,并获得了与您相同的输出。
根据上图建议您不要在 /app/superset_home/
挂载 fileshare 因为这里 superset.db
和 superset.db-journal
驻留。如果我们安装到这个位置,就会发生冲突。所以最好建议你安装在 /aci/logs/
或任何你想要的位置而不是 /app/superset_home/
更新2------
因为我使用相同的存储帐户将 vloume 挂载到 /aci/logs/
,因为之前的卷挂载到 /app/superset_home/
。
遇到和你一样的错误
解决方案:为避免此类问题,创建一个新的存储帐户和文件共享,并将卷安装在 /aci/logs/
。
一旦我这样做了,我就解决了我的问题