amazon-web-services - 无法在 AWS Fargate 容器内解压缩
问题描述
我有从 zip 存档中提取内容的 Java 应用程序。将其作为Fargate
任务启动时,会产生以下错误:
java.util.zip.ZipException: invalid block type
在本地运行应用程序并设置不可写目录以将 zip 存档内容提取到时,我可能会遇到类似的 zlib 错误。否则它会起作用。
在 Docker 层中使用各种目录没有帮助(我尝试过/tmp
,WORKDIR
我也尝试User: root
过ContainerDefinition
),在ContainerDefinition
. 根据文档,Fargate 为可写的上层 Docker 层提供 10GB 的空间,为挂载的卷提供 4GB 的空间。为什么我无法提取 zip 存档?
我无法进一步追踪它,因为 Fargate 没有为此提供选项,而且我无法获得更多信息的 Java 异常。
解决方案
事实证明,我尝试上传的 zip 文件的缓冲区为零。我需要添加对 zip 文件的Binary media type
支持才能Api Gateway
正确上传到目标Task
。
推荐阅读
- git - qt.qpa.plugin 的 Git Difftool 问题:在“”中找不到 Qt 平台插件“cocoa”
- python - 仅针对一个文件的 Python 命令未找到错误
- angular - spyOn(document, 'getElementById') 升级到 angular 8/"@types/jasmine": "^3.4.0" 后抛出错误
- docker - WORKDIR 作为 VOLUME
- node.js - Parallelshell 模块未在 npm 上运行。可以做什么?
- swift - 如何在 Swift 中替换字符串中的子字符串
- mysql - 是否可以将键用作列,将值用作键/值数据库结构的值?
- javascript - 重构 if...else 块以使用三元运算符
- javascript - CSS禁用部分图标的缩放动画
- r - 如何将具有逗号分隔值的因子转换为 R 中的数字向量?