Назад | Перейти на главную страницу

Настройте домашний сервер для работы svn и Bugzilla

Я довольно опытный разработчик, но когда дело касается серверов и сетевого оборудования, я довольно зеленый.

Мы разрабатываем веб-сайт, и я хотел бы настроить сервер, на котором можно будет разместить мой репозиторий SubVersion, а также разместить Bugzilla, когда мы выпустим тестовую версию для некоторых пользователей.

Итак, что мне нужно для этого? У меня есть старый компьютер, которым можно пользоваться. Могу ли я запустить это на любой ОС? В настоящее время на нем установлена ​​Win 7, но я думал вместо этого перейти на Ubuntu. Есть ли причина выбрать то или другое?

Думаю, мне нужен веб-сервер, и я думаю, Apache подойдет. Нужно ли мне что-то еще, чтобы мой компьютер был доступен из любой точки Интернета, или все, что требуется, - это веб-сервер и стандартное подключение к Интернету?

Будем очень признательны за ссылку на хорошие онлайн-руководства. А то я про настоящих чайников;). Я обычно нахожу страницы, которые пытаются объяснить настройку серверов не у меня в голове.

мы здесь в очень похожей ситуации. Я использовал VirtualBox в качестве решения для виртуализации, и svn работает на виртуальной машине Windows Server 2008. Виртуальные машины дают вам дополнительную гибкость, если оборудование выходит из строя и вам очень нужно снова запустить SVN.

Я бы выбрал ОС, с которой вы больше знакомы. Я тоже иногда использую debian, но настраивая VisualSVN (http://www.visualsvn.com/) намного проще. Это займет около 2 минут. Напротив, я немного боролся с установкой Linux.

Однако в обоих случаях вам следует выполнить некоторые базовые проверки безопасности, например просканируйте порт вашей машины (используя 'nmap', см. http://nmap.org/) и убедитесь, что доступны только необходимые порты.

Чтобы сделать машину доступной в Интернете, вам необходимо настроить маршрутизацию. Здесь все становится немного сложнее. Однако существует одно простое решение, если у вас есть маршрутизатор, поддерживающий так называемую DMZ (демилитаризованную зону, см. http://en.wikipedia.org/wiki/DMZ_(computing) ), где вы можете просто ввести IP-адрес сервера, который хотите показать в Интернете - готово.

Последнее, что нужно сделать, - это добавить динамическую службу DNS, такую ​​как dyndns, которая помогает людям находить вашу машину в сети. Вам в основном нужно зарегистрироваться на их сайте и настроить маршрутизатор на обновление внешнего IP-адреса при его изменении. Некоторые маршрутизаторы также поддерживают это изначально и с очень небольшой конфигурацией. Linksys WRT 54 отлично работает, например, и еще лучше, если вы установите другую прошивку, такую ​​как dd-wrt (http://www.dd-wrt.com/site/index). Звучит сложнее, чем есть на самом деле, и в качестве награды вы получаете простой в настройке веб-интерфейс на встроенном маршрутизаторе.

Возможно, вы сможете немного усовершенствовать свою сетевую инфраструктуру?

Я бы пошел с каким-нибудь линуксом. Вы можете запускать в Windows все, что хотите, но это сложнее и менее поддерживается. Это проекты с открытым исходным кодом, и их родной средой обычно является Linux.

Вам либо понадобится статический IP-адрес в вашем интернет-соединении, либо вам нужно будет использовать какую-то динамическую службу DNS, которая позволяет вам изменять DNS при изменении вашего IP-адреса.

Subversion в целом

Это поможет настроить SVN и Apache, чтобы к исходному контролю можно было получить доступ извне (не уверен, хотите ли вы этого).

Сервер Ubuntu прост в настройке и содержит установочные пакеты для всех необходимых функций. Документация находится в каталоге / usr / share / doc. Вы можете изменить размер окон и установить его для двойной загрузки с Windows, если вы решите, что не можете жить с Linux.

И для Windows, и для Ubuntu вам нужно будет выполнить некоторую настройку. Для Ubuntu это будет в основном настройка доступа и вещей, связанных с безопасностью.

Вы должны установить брандмауэр на свой сервер, и это легко сделать с помощью внутреннего сетевого стека в Linux. Я предпочитаю shorewall, но предустановленный пакет брандмауэра в Ubuntu может быть проще для вас.

Я делаю то же самое (и почти закончил). Я начал с сервера Ubuntu 9.10, получил подрывную работу над apache. С настроенным dyndns, поэтому он доступен за пределами моей домашней сети. Хотя Subversion работал нормально, я столкнулся с некоторыми проблемами при установке bugzilla, что-то связано с модулями perl datetime. Поэтому я решил переустановить Debian 5, прочитав немного о преимуществах долгосрочной поддержки и в целом более высокой стабильности Debian по сравнению с Ubuntu. В целом Ubuntu идеально подходит для установки на рабочем столе, а Debian - для установки на сервере (как Fedora и RHEL, соответственно). Однако сервер Ubuntu поддерживается Canonical, и я читал о нескольких хороших вещах об установке сервера, но, судя по тому, что вы пытаетесь сделать, я бы выбрал Debian.

Я до сих пор не полностью разобрался с настройкой Bugzilla и приветствую любые ссылки, которыми могут поделиться люди о настройке на Debian 5.