如何解决我正在尝试使用 .ebextension 配置在弹性 bean 堆栈上安装 pdftk 服务器,但无法安装
我正在尝试使用 .ebextension 配置在弹性 bean 堆栈上安装 pdftk 服务器,但无法安装。
我正在尝试 .ebextension 文件夹中的以下配置文件。请帮帮我
# Install PDFtk
01_wget_pdftk:
command: "sudo wget https://hone-compiled-packages.s3.eu-central-1.amazonaws.com/pdftk-pdfw-2.02-1.x86_64.rpm"
ignoreErrors: false
02_install_pdftk:
command: "sudo rpm -ivh pdftk-pdfw-2.02-1.x86_64.rpm"
ignoreErrors: false
我尝试了以下链接,但对我没有帮助。
https://stackoverflow.com/a/61943622/7532917
Aws Elastic beanstalk ebextensions not working when new instance is getting spinned
https://honesoftware.com/blog/install-pdftk-on-an-aws-elasticbeanstalk-environment
AWS ElasticBeanstalk .ebextensions not being executed
解决方法
您的问题很可能是空格。该文件是一个 YAML 文件。如果您的复制/粘贴准确无误,它将无法解析文件,因为空格在 YAML 文件中非常重要。
您没有包括您的目标平台,尽管这可能与您正在做的事情无关。为了快速测试,我在 Elastic Beanstalk 的 AWS 区域中启动了一个 python 3.8 环境。我首先从以下位置下载示例配置:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/tutorials.html - 我使用了 python.zip 文件,但就像我提到的那样,我实际上并没有修改任何 python 代码。
我首先在没有任何更改的情况下进行部署,以确保它出现。它在 Web 浏览器的 80 端口上做出响应。然后我添加了我的 SSH 密钥(在配置-> 安全性下)屏幕。我能够成功通过 SSH 进入该框并确认未安装 pdftk。
我解压了 python.zip 文件,并在 .ebextensions 目录中添加了一个名为 01pdftk.config
的新配置文件,内容如下:
commands:
01_wget_pdftk:
command: "sudo wget https://hone-compiled-packages.s3.eu-central-1.amazonaws.com/pdftk-pdfw-2.02-1.x86_64.rpm"
cwd: "/root"
ignoreErrors: false
02_install_pdftk:
command: "sudo rpm -ivh /root/pdftk-pdfw-2.02-1.x86_64.rpm"
cwd: "/root"
ignoreErrors: false
空格很重要!然后我将它重新压缩(确保当我打开 zip 时 .ebextensions 目录位于 zip 的根目录)并使用上传和部署按钮上传到 AWS。我上传了 zip,稍等片刻即可应用,然后通过 SSH 进入盒子以确认它已安装。
[ec2-user@ip-XXX-XXX-XXX-XXX ~]$ sudo ls /root
pdftk-pdfw-2.02-1.x86_64.rpm
[ec2-user@ip-XXX-XXX-XXX-XXX ~]$ rpm -qa | grep pdftk
pdftk-pdfw-2.02-1.x86_64
如您所见,已安装 pdftk。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。