Вед-дев, Сео, Манимейкинг

Установка Bitbucket Server на Ubuntu 16.04

Установка Bitbucket Server на Ubuntu 16.04

Сегодня мы рассмотрим установку Bitbucket Server (ранее назывался Stash) на Ubuntu 16.04.

Шаг 1. Скачивание и установка.

- Устанавливаем Ubuntu 16.04 LTS на сервер.
- Скачиваем исходник битбакет сервера: https://www.atlassian.com/software/bitbucket/download
- Покупаем лицензию или используем бесплатный пробный период.
- Устанавливаем ./atlassian-bitbucket-4.10.1-x64.bin. Устанавливаем как сервис с sudo.
- Качаем драйвер БД для MySQL/PostgreSQL: https://confluence.atlassian.com/bitbucketserver/connecting-bitbucket-server-to-mysql-776640382.html и кидаем его в директорию /opt/atlassian/bitbucket/4.10.1/lib/

Шаг 2. Настройка доступа к Bitbucket Server через браузер.

Используем следующий nginx конфиг:

server {
        listen 80;
        server_name git.domain.com;
        return 301 https://$server_name$request_uri;
}

server {
        listen 443 ssl;

        server_name git.domain.com;

        root /srv/www/git.domain.com;
        #index index.php index.html index.htm;

        ssl_certificate /etc/letsencrypt/live/git.domain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/git.domain.com/privkey.pem;

        include snippets/ssl-params.conf;

        location / {
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://localhost:7990;
                client_max_body_size 10M;

                # vs timeouts
                proxy_connect_timeout       600;
                proxy_send_timeout          600;
                proxy_read_timeout          600;
                send_timeout                600;
        }
}

Перезапускаем nginx.

Далее, идем в /var/atlassian/application-data/bitbucket/shared/server.xml и добавляем строки:

<Connector port="7990"
           protocol="HTTP/1.1"
           connectionTimeout="20000"
           useBodyEncodingForURI="true"
           redirectPort="8443"
           compression="on"
           compressableMimeType="text/html,text/xml,text/plain,text/css,application/json,application/javascript,application/x-javascript"
           secure="true"
           scheme="https"
           proxyName="git.domain.com"
           proxyPort="443"/>

Сохраняемся и перезапускаем Bitbucket Server (Далее - BB). Теперь ваш BB будет доступен по адресу git.domain.com.

Шаг 3. Настройка SSH доступа

По умолчанию в BB требуется порт 7999 для взаимодействия с Git через SSH протокол.
Для того чтобы сделать переадресацию с 22 порта на 7999 необходимо использовать HaProxy и дополнительный IPV4 адрес.
Устанавливаем haproxy через apt.
Далее, изменяем конфиг (Используем дополнительный IPV4 адрес) /etc/haproxy/haproxy.cfg:

defaults
        #option httplog
        option tcplog

frontend sshd
        mode tcp
        bind ipv4_address:22
        default_backend ssh
        timeout client 1h

backend ssh
        mode tcp
        server localhost-bitbucket-ssh 127.0.0.1:7999

Затем меняем прослушивание порта 22 ТОЛЬКО на основной IPV4 адрес в /etc/ssh/sshd_config:

# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
ListenAddress 180.30.140.40

Запускаем HaProxy и пытаемся склонировать какой-нибудь локальный репозиторий.

Если вы решите не пользоваться проксированием порта 22 на 7999, то не забудьте в UFW разрешить доступ к этому порту:

sudo ufw allow 7999/tcp
sudo ufw status verbose

Гайд по обновлению с 4 до 5 версии: http://webcoder.kz/obnovit-bitbucket-4-do-5-versii



Комментарии (0)

Разделы

Подписаться

Подписка на RSS-лента последние записи из Блога

Комменты

  • Olzhas 7 месяцев 3 недели назад
    Спасибо. С Новым Годом! 
  • Den 8 месяцев 2 недели назад
    В первой функции, при создании переменной $li_previous нужно поменять '←' с NULL, в $li_next сделать тоже самое. 
  • Гость 8 месяцев 2 недели назад
    Если все ровно так как было описано, то нет никаких сомнений что домен увел сам регистратор. Потому что вероятность того 
  • Валерий 9 месяцев 2 недели назад
    да можно делать импорт-экспорт только лишь в оболочке на входя на mysql сервер 
  • admin 9 месяцев 2 недели назад
    Валерий, а зачем вам именно так делать экспорт? Если я не ошибаюсь, то там нет какой-либо команды чтобы сделать экспорт 
  • Валерий 9 месяцев 3 недели назад
    захожу на mysql через ssh по команде  
  • admin 9 месяцев 3 недели назад
    Добрый вечер, какой у вас клиент? 
  • Валерий 9 месяцев 3 недели назад
    Здравстуйте, есть команда чтобы сделать экспорт базы внутри mysql клиента? 
  • Eduard 10 месяцев 6 дней назад
    Видать, домен хороший был. Заявление пробывали писать на мошенника? 
  • Stas 11 месяцев 2 недели назад
    Ошибка в ключе квантификатора - replace(/будешь|пить/ig, "хлеб"); Указать -g для прохода по всем совпадениям!