Как использовать Capistrano с сервером, который находится за брандмауэром? - PullRequest
1 голос
/ 12 июля 2009

У меня есть немного ситуации. Я прочитал около сорока одиннадцати различных учебных пособий / книг / видео по Capistrano, и ни один из них не затрагивал необычные случаи. Все они предполагают простую установку - что, по моему опыту, редко встречается.

В основном моя ситуация выглядит следующим образом:

1) Я занимаюсь разработкой приложения в домашней системе

2) Моя цель - запустить приложение на сервере в офисе, работающем за маршрутизатором компании. У меня есть все соответствующие порты (21,22,80,3000 и т. Д.), Переадресованные на машину, так что все в порядке, что касается внешнего взаимодействия.

3) Я использую GIT для контроля версий и загружаю обновления на сам сервер.

Мое замешательство происходит в двух областях:

1) Как мне определить все соответствующие роли в рецепте Capistrano? Я основываю их на внешнем IP или внутреннем?

2) Как я могу сказать Capistrano искать локально (вместо того, чтобы пытаться отскочить) на той же машине для хранилища GIT? Конечно, это предполагает, что Capistrano делает что-либо вообще с сервера.

ПРИМЕЧАНИЕ. Одна из серьезных проблем, с которыми я сталкиваюсь, заключается в том, что ни одна из машин в офисе не может получить доступ к основному IP-адресу изнутри сети - предположительно, защита от DOS и других проблем - так что если для по какой-то причине серверу нужно притвориться, что информация находится на внешней машине, когда она действительно локальна, она не будет работать.

1 Ответ

0 голосов
/ 12 июля 2009

Думаю, вам нужно взглянуть на команду: deploy_via; в частности, «копия»:

http://www.capify.org/index.php/Understanding_Deployment_Strategies

Рассматривайте ваш домашний компьютер как удаленный, а сервер как локальный, и для развертывания требуется локальная копия.

...