由于不再一个网络中,配置好 cap 后,在要部署的机器上链接不上 git 仓库,所以不能正确部署,怎么办???求大神解答
可以先用 SCP 把项目传到服务器上,然后用下面的方法 http://stackoverflow.com/questions/5532323/how-to-configure-capistrano-to-deploy-from-local-git-repository
假定网络结构式这样:
Local | Network A | Production Network
我们以前也遇到过,Local 不能直接到 Production Network,于是有多种办法,Capistrano 是支持 Gateway 的,搜索 Capistrano Gateway 意思是用 Network A 作为跳板来发布到 Production Network
Capistrano Gateway
还有一种办法是把发布脚本放在 Network A 的机器上,每次发布到先 SSH 到 Network A 的机器上面执行 cap deploy
cap deploy
直接上 coding 吧
负责部署的机器应该可以同时访问 2 个网络吧,在这台机器上做个 ssh reverse tunnel 就好了
不建议本地搭建 git 服务器,可以使用 bitbucket, 有免费的私有仓库可用。