- 我正在使用 cpanel 网络管理系统。
- 我用它创建了一个 git 存储库。
- 我能够将我的本地代码推送到该 git 存储库。
当我尝试将存储库中的代码部署到服务器上的生产目录时出现问题。
根据 cpanel documentation about deployment ,为了部署,git 存储库必须包含 .cpanel.yml
使用以下示例数据提交的文件:
---
deployment:
tasks:
- export DEPLOYPATH=/home/user/public_html/
- /bin/cp index.html $DEPLOYPATH
- /bin/cp style.css $DEPLOYPATH
我尝试了此文件的各种不同配置以便能够部署但无法使其工作。我找不到任何更多文档或任何进一步开发示例或示例文件。
我的 linux 服务器的相关结构是这样的:
home/<username>/
- git/gitrepo/
- all of the git files and folders
- public_html/<app_folder>/
我想将 git 存储库中的所有文件和文件夹部署到 public_html/<app_folder>/
中目录。
我尝试了以下不同的配置:
---
deployment:
tasks:
- export DEPLOYPATH=/home/<username>/public_html/<app_folder>
- / $DEPLOYPATH
---
deployment:
tasks:
- export DEPLOYPATH=/home/user/public_html/
- /bin/cp $DEPLOYPATH
---
deployment:
tasks:
- export DEPLOYPATH=/home/user/public_html/
- / index.html $DEPLOYPATH // Tried just one file to see if would work but it didn't.
---
deployment:
tasks:
- export DEPLOYPATH=/home/user/public_html/
- /bin/cp index.html $DEPLOYPATH // Tried just one file to see if would work but it didn't.
最佳答案
所以这基本上是一个 bash 脚本,当您更新存储在服务器上的 repo 时,CPanel 会运行该脚本。你的布局应该是:
如果您正在复制示例,请删除所有“# comments”,否则它可能不起作用
---
deployment:
tasks:
- export DEPLOYPATH=/home/<username>/public_html/<app_folder>
- /bin/cp <file_name> $DEPLOYPATH #Copy specific file to destination from root
- /bin/cp /<sub_folder>/<file_name> $DEPLOYPATH #copy specific file from source sub folder
- /bin cp * $DEPLOYPATH #copy all from root
- /bin cp /<sub_folder>/* $DEPLOYPATH #copy all from sub folder root
所以上面的内容应该对你有用......但是.....
如果您要将整个根目录复制到目标位置,那么这里就是我用来复制所有内容的那个。
---
deployment:
tasks:
- export DEPLOYPATH=/home/<user_name>/public_html #Add /<sub_folder> if required
- /bin/cp -r * $DEPLOYPATH
- /bin/cp "复制命令"
- -r "递归包含子文件夹/文件"
- '*' "全部"
记得加/<sub_folder>
如果您需要 public_html 以外的应用程序文件夹
你可以从我的仓库中获取文件:
https://github.com/FrancoisGeyser/cPanel-yml.git
希望对您有所帮助。
关于linux - 尝试将 cpanel git 存储库部署到目录时,.cpanel.yml 文件的格式出现问题。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52688981/