【发布时间】:2022-01-13 03:41:11
【问题描述】:
我正在尝试将 ASP.NET 应用程序部署到 AWS。当我按下部署按钮时出现错误
在中止部署期间,某些实例可能已部署新的应用程序版本。为确保所有实例都运行相同的版本,请重新部署相应的应用程序版本。
我不知道我在哪里犯了错误以及出了什么问题 有什么意见吗?
【问题讨论】:
标签: asp.net amazon-web-services
我正在尝试将 ASP.NET 应用程序部署到 AWS。当我按下部署按钮时出现错误
在中止部署期间,某些实例可能已部署新的应用程序版本。为确保所有实例都运行相同的版本,请重新部署相应的应用程序版本。
我不知道我在哪里犯了错误以及出了什么问题 有什么意见吗?
【问题讨论】:
标签: asp.net amazon-web-services
如果您尝试部署已部署的同名源文件 zip,则会收到此错误消息。 ZIP 文件名不是 TAG !!!。
您应该始终使用不同的名称部署源文件 zip。
最佳做法是使用不断增加的版本号(例如 Project-v2)或其他内容。
【讨论】:
@user2763557
我知道这个问题已经很老了,但我在尝试通过代码管道从 Github 部署我的代码时遇到了类似的问题。
但是我解决了这个问题。这是一个错误,当我在 Elastic Beanstalk 上运行 7.4 时,composer 尝试安装 PHP 版本 7.3 时发生。
因此,解决其他类似问题的一个好方法是在 Elastic Beanstalk 中下载 完整日志 并打开 eb-engine.log 并查找类似我的错误:
问题 1 - 这个包需要 php 7.3.* 但您的 PHP 版本 (7.4.4) 不满足 > 要求。
2020/05/08 12:38:42.162732 [INFO] 执行清理逻辑
2020/05/08 12:38:42.162814 [INFO] CommandService 响应:{"status":"FAILURE","api_version":"1.0","results":[{"status":"FAILURE","msg" :"Engine >执行遇到错误。","returncode":1,"events":[]}]}
那是我的错误,它停止 代码管道部署过程并抛出了错误。 我希望这可以帮助某人。
【讨论】:
就我而言,这是Microsoft.Powershell.Archive 的错误。
https://superuser.com/questions/1382839/zip-files-expand-with-backslashes-on-linux-no-subdirectories
我从日志文件中找到这些消息:/var/log/eb-engine.log
An error occurred during execution of command [app-deploy] - [StageJavaApplication]. Stop running the command. Error: Command /bin/sh -c /usr/bin/unzip -q -o /opt/elasticbeanstalk/deployment/app_source_bundle -d /tmp/extracted_app_source_bundle failed with error exit status 1. Stderr:warning: /opt/elasticbeanstalk/deployment/app_source_bundle appears to use backslashes as path separators
我可以成功部署 zip 文件 - 由其他程序存档。
【讨论】:
就我而言,我使用 Code Pipeline 和 GitHub 部署 Node.js 时遇到了这个错误:
2020-12-28 14:39:30 UTC+0900
ERROR
During an aborted deployment, some instances may have deployed the new application version. To ensure all instances are running the same version, re-deploy the appropriate application version.
2020-12-28 14:39:29 UTC+0900
ERROR
Failed to deploy application.
2020-12-28 14:39:29 UTC+0900
ERROR
Encountered AccessDeniedException: User: ..... is not authorized to perform: logs:DescribeLogGroups on resource: arn:aws:logs:ap-northeast-2:...
即使我得到了服务器更新的错误,所以我添加了代码管道的权限以查看日志并且一切正常
修复我所做的:
【讨论】:
我知道这是一个老问题,但问题可能永远不会老,因为它可能会由于几个问题而再次出现。 当我使用 Docker 容器托管基于 HTML 的网站时,我遇到了同样的问题。
我通过暴露端口号修复了它
以前是:
From nginx
WORKDIR '/app'
COPY ./html/ /usr/share/nginx/html/
这在本地工作,但在 AWS Elasticbeanstalk 上部署期间失败。
我下载了日志,发现问题可能是由于没有暴露 nginx 服务器的端口。所以我暴露了默认的 nginx 服务器 80 端口,并再次将其部署在 AWS Elasticbeanstalk 上。
这一次,它成功了!
帮助成功部署的 Dockerfile 如下:
From nginx
EXPOSE 80
WORKDIR '/app'
COPY ./html/ /usr/share/nginx/html/
【讨论】: