heroku - Heroku buildpack:更新系统文件
问题描述
我需要更新位于 Heroku slug 中 /etc/ImageMagick-6/policy.xml 的 policy.xml 文件。我已经构建了一个自定义构建包来完成此任务,但由于 Heroku 的只读文件系统,我无法更新该文件。如何使用 buildpack 更新预装的系统设置?
这是我在部署过程中遇到的错误:
/tmp/codon/tmp/buildpacks/4b454e26b09e534bedfb4016207d14a65ef40579/bin/compile: line 33: /etc/ImageMagick-6/policy.xml: Read-only file system
这是 buildpack 中的编译脚本:
#!/bin/bash
indent() {
sed -u 's/^/ /'
}
echo "-----> Updating ImageMagick 6 Policy"
BUILD_DIR=$1
read -r -d '' IM6POLICY <<'EOF'
<policymap>
<policy domain="resource" name="memory" value="2GiB"/>
<policy domain="resource" name="map" value="1GiB"/>
<policy domain="resource" name="width" value="20KP"/>
<policy domain="resource" name="height" value="20KP"/>
<policy domain="resource" name="area" value="256MB"/>
<policy domain="resource" name="disk" value="1GiB"/>
<policy domain="resource" name="thread" value="4"/>
<policy domain="resource" name="throttle" value="0"/>
<policy domain="delegate" rights="none" pattern="URL" />
<policy domain="delegate" rights="none" pattern="HTTPS" />
<policy domain="delegate" rights="none" pattern="HTTP" />
<policy domain="path" rights="none" pattern="@*"/>
<policy domain="cache" name="shared-secret" value="passphrase" stealth="true"/>
</policymap>
EOF
if [ ! -d /etc/ImageMagick-6 ]; then
mkdir -p /etc/ImageMagick-6
fi
echo "$IM6POLICY" > /etc/ImageMagick-6/policy.xml
解决方案
推荐阅读
- python - 我尝试编写一个具有 if else 循环功能的代码。我想要一个运行 if 语句的次数的计数器
- go - 无法从恐慌中恢复 - 完全跳过延迟
- dbix-class - DBIx 可能有自定义条件,对象总是 undef
- java - 遍历数组,如果下一个 int 等于当前则返回 True
- python - 如何使用 Python 从 Pdf 导入混合分数?
- java - SnakeYAML scala 中的 YAML 环境变量插值
- python - 有没有办法从 TheHackerNews 上发布的帖子中使用 BeautifulSoup 触发 Python 函数?
- php - 将导航栏选择设置为活动类,同时在登录时将登录链接切换到注销?
- java - 向正在运行的进程发送命令
- java - Selenium Webdriver 抓取,陈旧的元素