如何在 'cf push' 期间为 Node 应用程序保留文件的执行位?
How can I preserve execute bits for files during 'cf push' for Node apps?
我需要推送一个将执行 bash 脚本的节点应用程序,并且脚本文件需要设置执行位。 cf 命令行实用程序可以让我设置执行权限吗?
如果没有,我可以在我的应用程序的暂存周期中设置执行权限位吗?
设置了执行位的脚本在被推送时也会设置它。
如果您需要调用脚本作为暂存或推送应用程序的一部分,有两种选择:
在暂存期间调用脚本
在 package.json
到 运行 脚本中使用 scripts.preinstall
节 暂存 (在 npm install
期间,请参阅 here 以获得更多选项),并将该脚本包含在您的应用程序中:
"scripts": {
"start": "node app.js",
"preinstall": "./configure"
},
暂存后调用脚本
如果脚本可以在应用启动前运行,但在暂存后,使用.profile.d
。在您的应用程序在容器中启动之前(暂存之后),bash shell 将 运行 您的 .profile.d
文件夹中的所有脚本。
例如,我可以有一个 my_app/.profile.d/aScript.sh
文件:
export key=value
或 chmod +x some_file
我需要推送一个将执行 bash 脚本的节点应用程序,并且脚本文件需要设置执行位。 cf 命令行实用程序可以让我设置执行权限吗?
如果没有,我可以在我的应用程序的暂存周期中设置执行权限位吗?
设置了执行位的脚本在被推送时也会设置它。
如果您需要调用脚本作为暂存或推送应用程序的一部分,有两种选择:
在暂存期间调用脚本
在 package.json
到 运行 脚本中使用 scripts.preinstall
节 暂存 (在 npm install
期间,请参阅 here 以获得更多选项),并将该脚本包含在您的应用程序中:
"scripts": {
"start": "node app.js",
"preinstall": "./configure"
},
暂存后调用脚本
如果脚本可以在应用启动前运行,但在暂存后,使用.profile.d
。在您的应用程序在容器中启动之前(暂存之后),bash shell 将 运行 您的 .profile.d
文件夹中的所有脚本。
例如,我可以有一个 my_app/.profile.d/aScript.sh
文件:
export key=value
或 chmod +x some_file