我创造了一个简单的" Hello World"在Ember.js的应用程序。它运行在我的本地环境中。之后,我使用命令" ember build --env production"构建我的应用程序以部署到Web主机。
然后,我使用本地git将其推送到Microsoft Azure。在这种情况下,我使用本地git作为Azure中的部署选项来部署我的Ember App。 因此在我的本地cmd之后,我点击了这个命令" git push origin master",消息显示成功,但是当我在浏览器中点击URL时 - 它说"你做了没有权限查看目录或页面"。请问有谁可以告诉我这里的问题是什么?
答案 0 :(得分:0)
我有很多类似的问题部署到azure作为一个独立的ember应用程序。我仍然在改变我的ci / cd的过程,但今天我将它部署到azure中的nodejs应用程序内的目录中,并且我在路由中提供客户端应用程序。我必须改变一些事情,所以我在gitlab-ci中进行本地ci / cd,部署到我的节点api repo的远程,然后我将服务器应用程序推送到visual studio ci,然后作为服务器api的一部分部署到azure
答案 1 :(得分:0)
尝试以下步骤。我能够在Azure中成功运行我的ember应用程序,我的代码在Github中。
<强>步骤1:强> npm install ember-cli-azure-deploy --save-dev -g azure-deploy init
<强>步骤2:强> 将deploy.sh替换为以下内容:
#!/bin/bash
# ----------------------
# KUDU Deployment Script
# Version: {Version}
# ----------------------
# Helpers
# -------
exitWithMessageOnError () {
if [ ! $? -eq 0 ]; then
echo "An error has occurred during web site deployment."
echo $1
exit 1
fi
}
# Prerequisites
# -------------
# Verify node.js installed
hash node 2>/dev/null
exitWithMessageOnError "Missing node.js executable, please install node.js, if already installed make sure it can be reached from current environment."
# Setup
# -----
SCRIPT_DIR="${BASH_SOURCE[0]%\\*}"
SCRIPT_DIR="${SCRIPT_DIR%/*}"
ARTIFACTS=$SCRIPT_DIR/../artifacts
KUDU_SYNC_CMD=${KUDU_SYNC_CMD//\"}
if [[ ! -n "$DEPLOYMENT_SOURCE" ]]; then
DEPLOYMENT_SOURCE=$SCRIPT_DIR
fi
if [[ ! -n "$NEXT_MANIFEST_PATH" ]]; then
NEXT_MANIFEST_PATH=$ARTIFACTS/manifest
if [[ ! -n "$PREVIOUS_MANIFEST_PATH" ]]; then
PREVIOUS_MANIFEST_PATH=$NEXT_MANIFEST_PATH
fi
fi
if [[ ! -n "$DEPLOYMENT_TARGET" ]]; then
DEPLOYMENT_TARGET=$ARTIFACTS/wwwroot
else
KUDU_SERVICE=true
fi
if [[ ! -n "$KUDU_SYNC_CMD" ]]; then
# Install kudu sync
echo Installing Kudu Sync
npm install kudusync -g --silent
exitWithMessageOnError "npm failed"
if [[ ! -n "$KUDU_SERVICE" ]]; then
# In case we are running locally this is the correct location of kuduSync
KUDU_SYNC_CMD=kuduSync
else
# In case we are running on kudu service this is the correct location of kuduSync
KUDU_SYNC_CMD=$APPDATA/npm/node_modules/kuduSync/bin/kuduSync
fi
fi
##################################################################################################################################
# Deployment
# ----------
echo Handling react app deployment.
# 1. Install npm packages
if [ -e "$DEPLOYMENT_SOURCE/package.json" ]; then
cd "$DEPLOYMENT_SOURCE"
echo "Running npm install"
eval /opt/nodejs/8.1.0/bin/npm install
exitWithMessageOnError "npm failed"
echo "Building ember app"
eval /opt/nodejs/8.1.0/bin/npm run build
exitWithMessageOnError "ember build failed"
cd - > /dev/null
fi
# 2. KuduSync
if [[ "$IN_PLACE_DEPLOYMENT" -ne "1" ]]; then
"$KUDU_SYNC_CMD" -v 50 -f "$DEPLOYMENT_SOURCE/dist" -t "$DEPLOYMENT_TARGET" -n "$NEXT_MANIFEST_PATH" -p "$PREVIOUS_MANIFEST_PATH" -i ".git;.hg;.deployment;deploy.sh"
exitWithMessageOnError "Kudu Sync failed"
fi
##################################################################################################################################
echo "Finished successfully."
&#13;
<强>步骤3:强>
转到Azure门户网站 单击创建资源 搜索“容器的Web应用程序” 单击创建 输入应用名称 选择服务计划等 单击配置容器 确保选择图像源作为Docker Hub并输入图像名称为prashanthmadi / azure-appservice-nginx:1.13
单击“确定”并创建Web应用程序。
创建webapp时,转到应用程序设置和 将WEBSITES_ENABLE_APP_SERVICE_STORAGE从false更新为true。 DOCKER_CUSTOM_IMAGE_NAME为prashanthmadi / azure-appservice-nginx:1.13 始终打开至开启 保存更改
配置部署源。完成后,点击浏览