Как установить GitBucket с Nginx на Ubuntu 18.04 LTS
Это руководство существует для этих версий ОС
- Ubuntu 20.04 (Focal Fossa)
- Ubuntu 18.04 (Bionic Beaver)
На этой странице
- Требования
- Начало работы
- Установить Java
- Установите GitBucket
- Создайте файл службы Systemd для GitBucket.
- Настройка подключения к базе данных для GitBucket
- Настройка Nginx в качестве обратного прокси-сервера
- Доступ к веб-интерфейсу GitBucket
GitBucket — это бесплатная платформа Git с открытым исходным кодом на базе Scala, совместимая с Github API. Он простой, легкий и является альтернативой Github или BitBucket. Он поставляется с широким набором функций, включая поддержку GitLFS, проблемы, запрос на вытягивание, уведомления, систему подключаемых модулей, общедоступные и частные репозитории Git. Его можно легко интегрировать с LDAP для управления учетными записями и группами.
В этом руководстве мы узнаем, как установить и настроить GitBucket на сервере Ubuntu 18.04.
Требования
- Новый сервер с Ubuntu 18.04.
- В вашем экземпляре настроен пароль root.
Начиная
Перед запуском обновите свою систему до последней стабильной версии. Вы можете сделать это с помощью следующей команды:
apt-get update -y
apt-get upgrade -y
После обновления перезапустите сервер, чтобы применить все изменения конфигурации.
Установить Java
GitBucket требует, чтобы на вашем сервере была установлена Java 8 или новее. Итак, вам нужно будет установить Java на свой сервер.
Чтобы установить Java, выполните следующую команду:
apt-get install default-jdk -y
После установки Java вы можете проверить версию Java с помощью следующей команды:
java -version
Вы должны увидеть следующий вывод:
openjdk version "10.0.2" 2018-07-17 OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.2) OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.2, mixed mode)
Как только вы закончите, вы можете перейти к следующему шагу.
Установить Гитбакет
Перед установкой GitBucket вам нужно будет создать непривилегированного пользователя для запуска GitBucket.
Выполните следующую команду, чтобы создать системного пользователя с именем gitbucket.
groupadd -g 555 gitbucket
useradd -g gitbucket --no-user-group --home-dir /opt/gitbucket --no-create-home --shell /usr/sbin/nologin --system --uid 555 gitbucket
Затем загрузите GitBucket из репозитория Git с помощью следующей команды:
wget https://github.com/gitbucket/gitbucket/releases/download/4.31.2/gitbucket.war
После завершения загрузки создайте каталог для GitBucket внутри /opt.
mkdir /opt/gitbucket
Затем переместите загруженный файл в каталог gitbucket:
mv gitbucket.war /opt/gitbucket
Затем дайте правильное разрешение каталогу gitbucket с помощью следующей команды:
chown -R gitbucket:gitbucket /opt/gitbucket
Как только вы закончите, вы можете перейти к следующему шагу.
Создайте файл службы Systemd для GitBucket
Затем вам нужно будет создать файл службы Systemd для GitBucket, чтобы управлять службой GitBucket. Вы можете создать его с помощью следующей команды:
nano /etc/systemd/system/gitbucket.service
Добавьте следующие строки:
# GitBucket Service [Unit] Description=Manage Java service [Service] WorkingDirectory=/opt/gitbucket ExecStart=/usr/bin/java -Xms128m -Xmx256m -jar gitbucket.war User=gitbucket Group=gitbucket Type=simple Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target
Сохраните и закройте файл. Затем перезагрузите Systemd с помощью следующей команды:
systemctl daemon-reload
Затем запустите службу gitbucket и включите ее запуск во время загрузки с помощью следующей команды:
systemctl enable gitbucket
systemctl start gitbucket
Теперь вы можете проверить статус gitbucket с помощью следующей команды:
systemctl status gitbucket
Вы должны увидеть следующий вывод:
? gitbucket.service - Manage Java service Loaded: loaded (/etc/systemd/system/gitbucket.service; disabled; vendor preset: enabled) Active: active (running) since Tue 2019-08-09 09:43:42 UTC; 5s ago Main PID: 17835 (java) Tasks: 18 (limit: 1113) CGroup: /system.slice/gitbucket.service ??17835 /usr/bin/java -Xms128m -Xmx256m -jar gitbucket.war Aug 09 09:43:42 ubuntu1804 systemd[1]: Started Manage Java service. Aug 09 09:43:45 ubuntu1804 java[17835]: 2019-07-09 09:43:45.102:INFO::main: Logging initialized @2700ms to org.eclipse.jetty.util.log.StdErrLog Aug 09 09:43:46 ubuntu1804 java[17835]: 2019-07-09 09:43:46.134:INFO:oejs.Server:main: jetty-9.4.z-SNAPSHOT; built: 2018-11-14T21:20:31.478Z; g lines 1-11/11 (END)
Как только вы закончите, вы можете перейти к следующему шагу.
Настройка подключения к базе данных для GitBucket
GitBucket поставляется со встроенной базой данных H2. Чтобы настроить подключение к базе данных, откройте файл database.conf в вашем любимом текстовом редакторе:
nano /opt/gitbucket/database.conf
Добавьте следующие строки:
db { url = "jdbc:h2:${DatabaseHome};MVCC=true" user = "sa" password = "sa" }
Как только вы закончите, вы можете перейти к следующему шагу.
Настройте Nginx в качестве обратного прокси
По умолчанию GitBucket работает на порту 8080. Поэтому вам нужно будет настроить Nginx в качестве обратного прокси-сервера, чтобы повысить производительность и включить другие функции, такие как шифрование HTTP/2 и TLS.
Для этого сначала установите Nginx с помощью следующей команды:
apt-get install nginx -y
Затем создайте обратный прокси для GitBucket, создав следующий файл:
nano /etc/nginx/sites-available/gitbucket.conf
Добавьте следующие строки:
upstream gitbucket { server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5; } server { listen 80; server_name your-domain.com; 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://gitbucket/; } }
Сохраните и закройте файл. Затем включите виртуальный хост Nginx с помощью следующей команды:
ln -s /etc/nginx/sites-available/gitbucket.conf /etc/nginx/sites-enabled/
Затем проверьте Nginx на наличие синтаксических ошибок и перезапустите службу Nginx с помощью следующей команды:
nginx -t
Вы должны увидеть следующий вывод:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
systemctl restart nginx
Как только вы закончите, вы можете перейти к следующему шагу.
Доступ к веб-интерфейсу GitBucket
Теперь GitBucket установлен и настроен. Откройте веб-браузер и введите URL-адрес http://ваш-домен.com. Вы будете перенаправлены на следующую страницу:
Теперь нажмите на кнопку Войти. Вы будете перенаправлены на страницу входа, как показано ниже:
Теперь укажите имя пользователя и пароль по умолчанию как root/root и нажмите кнопку «Войти». Вы должны увидеть панель инструментов GitBucket на следующей странице:
Затем перейдите к настройкам учетной записи, чтобы изменить пароль root по умолчанию, как показано на следующей странице:
Поздравляем! вы успешно установили и настроили GitBucket на сервере Ubuntu 18.04 LTS. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.