У меня есть работающее веб-приложение, которое без проблем работает с docker -compose. Файл docker compose выглядит так:
version: '3.5'
services:
webapp:
image: docker_webapp
ports:
- 8080:5000
volumes:
- ./cloud_storage:/home/app
environment:
- FLASK_APP=dashapp
- FLASK_ENV=production
- DATABASE_URL=sqlite:////home/app/db/app.db
- FLASK_DEBUG=0
- DATA_PATH=/home/app/data
точка входа. sh содержит следующие команды:
#!/bin/sh
echo 'starting app'
flask db upgrade
uwsgi /home/app/uwsgi_conf/uwsgi.ini
, а конфигурация файла uwsgi.ini следующая:
[uwsgi]
http = 0.0.0.0:5000
module = app:server
#master = true
processes = 2
threads = 4
На стороне azure моя конфигурация следующая:
#create web app
az webapp create --resource-group $ACI_PERS_RESOURCE_GROUP --plan $APP_SERVICE_PLAN_NAME --name $APP_NAME --deployment-container-image-name $REPO_ADDRESS/docker_webapp:latest
# configure webapp to access container registry
az webapp config container set --name $APP_NAME --resource-group $ACI_PERS_RESOURCE_GROUP --docker-custom-image-name $REPO_ADDRESS/docker_shapapp:latest --docker-registry-server-url https://$CONTAINER_REGISTRY_NAME.azurecr.io --docker-registry-server-user $CONTAINER_REGISTRY_USERNAME --docker-registry-server-password $CONTAINER_REGISTRY_PASSWORD
# set the envirormet variables
az webapp config appsettings set --resource-group $ACI_PERS_RESOURCE_GROUP --name $APP_NAME --settings WEBSITES_PORT=5000 FLASK_APP=dashapp FLASK_ENV=production DATABASE_URL="sqlite:////home/app/db/app.db" FLASK_DEBUG=0 DATA_PATH="/home/app/data"
#mount file storage that is a copy of the local folder cloud_storage
az webapp config storage-account add --resource-group $ACI_PERS_RESOURCE_GROUP --name $APP_NAME --custom-id appdata --storage-type AzureFiles --share-name $SHARE_NAME --account-name $ACI_PERS_STORAGE_ACCOUNT_NAME --access-key $ACCES_KEY --mount-path "/home/app"
все выглядит хорошо. Действительно, я получаю следующее сообщение журнала от azure:
Container xxxxxx_0_9500b0c7 for site xxxxxx initialized successfully and is ready to serve requests.
Но если я открываю веб-сайт в моем браузере, я получаю внутреннюю ошибку сервера с макетом, который не является одним из моего веб-приложения. Что я делаю не так? как я могу получить доступ к журналам docker или хотя бы прикрепить контейнер (служба s sh не работает)?
Спасибо за помощь