我一直在努力解决这个问题。 在capifony下我运行$ cap deploy:setup并在我的远程主机上创建两个文件: 1 /发布 2 /共享。 我认为这表明到目前为止一切都很完美。
但是当我开始部署时,我收到了以下错误。
*** [err :: ***] ln: creating symbolic link `public_html/Symfony/releases/20120814164750/app/logs': Permission denied
*** [deploy:update_code] rolling back
failed: "sh -c 'ln -nfs public_html/Symfony/shared/app/logs public_html/Symfony/releases/20120814164750/app/l
ogs'"
看起来没有任何内容被复制到版本中。 很多被复制到共享(也许一切)我不知道这是否正常。
我可以告诉您如何解决问题吗? 我应该在哪里寻找一些提示。我不在乎...... 感谢很多。
PS:下面是我的deploy.rb文件
set :application, "My app"
set :deploy_to, "public_html/Symfony"
set :domain, "mydomain.com"
ssh_options[:port] = "2222"
set :user, "****"
set :scm, :git
set :repository, "file:///media/Pierre/Symfony"
set :deploy_via, :rsync_with_remote_cache
role :web, domain
role :app, domain
role :db, domain, :primary => true
set :use_sudo, false
set :keep_releases, 3
set :shared_files, ["app/config/parameters.yml"]
set :shared_children, [app_path + "/logs", web_path + "/uploads", "vendor"]
set :use_composer, true
set :update_vendors, true
答案 0 :(得分:0)
根据您发布的内容,我有两点建议。
首先,它是拥有权利的东西。检查文档中的“设置权限”部分:http://symfony.com/doc/current/book/installation.html#configuration-and-setup。当共享日志时,这可能是一个问题。
但如果这是你的第一次部署,那么你可能在版本控制下有app / logs目录吗?检查您的.gitignore是否正确:http://symfony.com/doc/current/cookbook/workflow/new_project_git.html
答案 1 :(得分:0)
我通过在deploy.rb文件中添加以下行来修复此错误:
ssh_options[:forward_agent] = true
default_run_options[:pty] = true
此answer对于调试capistrano非常有用,并且可以准确找出导致部署失败的错误。