LINUX.ORG.RU
ФорумTalks

А как вы деплоите свои проекты?

 , ,


0

2

Допустим, есть у вас VPS, и есть проект, который вы разрабатываете локально, а тестируете удаленно. Как вы доставляете свой код на сервер?

Раньше я мучилась с Git'ом, делая после написания каждой порции кода push/pull, и только потом смотрела, что у меня получилось. Недавно попробовала использовать дропбокс в консольном режиме - довольно удобно, но медленно, а временами и вовсе не работает (только недавно заметила, как часто дропбокс лежит). Плюс память жрет, гад.

Вот мне и стало интересно, как вы это делаете? Может я не владею особой магией? Мне нужно максимально упростить этот процесс, чтобы оставить минимум шагов между внесением изменений и деплоем.

Куча непонятных слов.

IPR ★★★★★
()
Ответ на: комментарий от schizoid

Это не продакшн, а боевой сервер. Естественно, тестирование делается перед запуском проекта.

scp

Еще варианты?

Dirty_Diana
() автор топика

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

thesame ★★★★
()
Ответ на: комментарий от Harald

Идите сначала вылечите озабоченность головного мозга, а затем приходите
Не все ли равно, какого пола вопрошающ{ий,ая}?

ms-dos32
()

разворачивать у себя тестовый сервер, в крайнем случае делать sshfs на тестовый сервер лежащий в другом месте. На продаекшн или делать export и разворачивать tar или делать pull с продакшн ветки, у каждого варианта есть свои плюсы.

P.S. привет isden уже был?

qnikst ★★★★★
()
Ответ на: комментарий от schizoid

Это сервер, на котором будет запущен публичный проект. Вроде бы все понятно. Необходимо провести тесты и понять, как проект ведет себя на этом железе, какие именно оптимизации нужно сделать. Выполнять эту работу на сферическом локальном сервере в вакууме нет никакого смысла.

Dirty_Diana
() автор топика
Ответ на: комментарий от Dirty_Diana

NFS? Оно лучше работает с большим количеством файлов, чем scp? Последний ужасно медленно все копирует.

Ну, чтобы сравнивать, надо иметь цифры. У меня их нет. :)

Relan ★★★★★
()

Если важный сайт, то тестирую локально, потом git push, если не важный захожу по ssh через наутилус и правлю в geany, сохраняю и смотрю результат

xorik ★★★★★
()
Ответ на: комментарий от xorik

Еще так можно:
Делаешь на сервере 2 каталога: основной и тестовый, второй например на поддомене или в отдельном каталоге. Заходишь по ssh на тест, пишешь код, сразу смотришь. Как готово делаешь commit и push в основной каталог

xorik ★★★★★
()

Ну тестировать во-первых надо локально. Во-вторых деплоить итаки git плюс какой-нибудь скрипто-фреймворк для деплоймента. Для руби знаю (немного работал) capistrano - раз настроил и, в принципе, никакого мучения. При том он не только проект может залить, но и полностью развернуть сервер (весь софт с конфигами).

invy ★★★★★
()
Ответ на: комментарий от invy

а по сути оно всё-равно всё сводится к git, scp, ssh и т.п.

invy ★★★★★
()

git. Только в виде ремута не репозиторий, а тестовая площадка. До релиза методом fetch'а и чекаута нужного тега. Правда, с вебом я уже давно завязал.

AiFiLTr0 ★★★★★
()
Ответ на: комментарий от Vit

Есть проекты, которые принципиально нельзя скопировать :( Например, у нас весь проект состоит из относительно децентрализованных веб-сервисов, которые обращаются друг к другу. Исходниками разработчики веб-сервисов не делятся, апи постоянно меняется. Если вдруг захочется сделать «виртуалку с копией продакшена», даже если дадут исходники (чего никогда не случится), придется копировать Весь Мир.

stevejobs ★★★★☆
()

Вся разработка только в development domain - это удаленный сервер который доступен только по ssh. Код хранится в svn, в транке которого всегда работоспособная версия системы.

Система попадает в production domain только после всестороннего тестирования: захожу по ssh на сервер, делаю svn up, правлю конфиги если надо, запускаю юнит и интеграционные тесты, рестарт демонов.

outtaspace ★★★
()

10001 способ внедрения. В яндексе, например, через deb-бы проекты внедряют. Я через rsync+fabric обновляю. В будущем подниму сетевую фс с кешированием.

true_admin ★★★★★
()

Попробовал fabric, доволен. Особенно когда несколько серверов.

AlexKiriukha ★★★★
()

git + capistrano. Если push для вас это мучение, то конфигурирование капистраны доставит вам массу мазохического удовольствие.

Alve ★★★★★
()
Ответ на: комментарий от stevejobs

Всякое бывает. Но это скорее исключение, чем правило. В любом случае нужна отдельная подготовленная тестовая система.

Я не полностью с продакшеном синхронизирую. Например, аттачменты не все копирую. Ну и синхронизация далеко не каждый день и даже на каждый месяц.

Vit ★★★★★
()
Ответ на: комментарий от stevejobs

use RealSync:

Прикольная штука, судя по описанию. Надо будет попробовать в будущем.

justAmoment ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.