capistrano的原型用户设置为在Linux上的tomcat部署

我对CD和DevOps主题相对比较陌生,我试图用capistrano来设置自动部署,这在我的本地特别testing环境中效果很好。 不过,我想知道如何在未来的目标环境中设置用户。

例如,Ubuntu Tomcat安装过程设置了拥有tomcat进程的tomcat(6 | 7)用户。 不过,使用这个用户不可能使用sshlogin,而对于capistrano,你需要用户使用ssh访问来运行所有的命令。 人们通常如何解决这个问题? 当然,我想到了我自己的解决scheme,但是我有兴趣听听是否有最佳做法。

最后还会有另一方build立我的目标环境,但是我可以有一个发言权,所以我想知道我在这里理想的要求。

  • Tomcat需要多less内存?
  • 在数据库之间翻转
  • mod_proxy_ajp(70007)指定的超时已过期:ajp_ilink_receive()无法接收标题
  • 在CentOS 5上安装Tomcat
  • 如何使用logrotate压缩和清理日志,但不能旋转它们
  • 如何重新激活禁用的Apache 2.2 AJP连接?
  • 2 Solutions collect form web for “capistrano的原型用户设置为在Linux上的tomcat部署”

    有很多方法可以做,但最重要的是设置sudo系统,因此启用SSH的部署用户(您需要设置)可以根据需要模拟tomcat或root进行部署。 实际的代码目录可以由tomcat拥有,或者可以由具有权限设置的部署用户拥有,以便tomcat可以使用这些文件。

    desc "Restarts the tomcast service" task restart_tomcat do set :user, "deployuser" run "sudo service tomcat restart", :roles => :tomcat_servers end 

    或者类似的。 如果sudo需要密码,capistrano足够聪明地提示你。

    请检查包装的官方build议如何设置。 看看你select的分布如何pipe理它们的包中的问题。 可能会有一些HOWTO的分布或包,寻找那些。 但在阅读其他版本的解决scheme时要小心,经常会发生configuration和function从一个版本到另一个版本发生根本性变化(其他支持包也可能发生变化)。

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.