GitLab

Wersja z dnia 15:54, 6 mar 2015 autorstwa Budek (dyskusja) (Utworzono nową stronę "GitLab to manager repozytoriów Git. Przed przystąpieniem do instalacji należy: # przeprowadzić wstępną konfigurację RVM i RoR. # dodać bazę i użyt...")

(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)

GitLab to manager repozytoriów Git.

Przed przystąpieniem do instalacji należy:

  1. przeprowadzić wstępną konfigurację RVM i RoR.
  2. dodać bazę i użytkownika MySQL.

Przed dalszymi krokami należy się zalogować na shellu MyDevil. Trzeba przejść do katalogu ~/domains/gitlab.example.com/, gdzie za gitlab.example.com należy podstawić wcześniej skonfigurowaną domenę.

Instalacja

Następnie należy:

  1. pobrać źródła GitLab git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-6-stable gitlab
  2. zmienić nazwę pobranego folderu na public_ruby i do niego przejść rm -r public_ruby && mv gitlab public_ruby && cd public_ruby
  3. skopiować przykładową konfigurację bazy danych cp config/database.yml.example config/database.yml
  4. ustawić w pliku config/database.yml w sekcji production zmienne:
    • database na nazwę bazy danych (np. m1064_redmine)
    • host na host bazy danych (np. mysql4.mydevil.net)
    • username na nazwę użytkownika bazy danych (np. m1064_redmine)
    • password na hasło bazy danych
  5. skopiować przykładową konfigurację gitlab cp config/gitlab.yml.example config/gitlab.yml
  6. ustawić w pliku config/gitlab.yml w sekcji gitlab zmienne:
    • host na domenę aplikacji (np. gitlab.example.com)
    • port na 80 (HTTP) lub 443 (HTTPS)
    • https na true jeśli strona będzie korzystać z HTTPS
    • user na nazwę użytkownika konta
    • email_from na Twój adres e-mail
  7. ... w sekcji gitlab_shell zmienne:
    • path na /usr/home/login/gitlab-shell/
    • repos_path na /usr/home/login/gitlab-repo/
    • hooks_path na /usr/home/login/gitlab-shell/hooks/
  8. wyłączyć obsługę kerberosa oraz zainstalować zależności gitlaba:
    • sed -i "" '/omniauth-kerberos/d' Gemfile
    • sed -i "" '/omniauth-kerberos/d' Gemfile.lock
    • sed -i "" '/timfel-krb5-auth/d' Gemfile.lock
    • bundle config build.charlock_holmes --with-icu-dir=/usr/local
    • bundle config build.nokogiri --with-iconv-include=/usr/local/include --with-iconv-lib=/usr/local/lib
    • bundle install --deployment --without development test postgresql aws
  9. uruchomić serwer redis oraz przystosować konfigurację GitLaba:
    • screen redis-server --unixsocket ~/redis.sock --port 0
    • echo "production: unix:/usr/home/login/redis.sock" > config/resque.yml
  10. skonfigurować gitlab_shell oraz GitLaba:
    • bundle exec rake gitlab:shell:install[v.2.4.0] REDIS_URL=unix:/usr/home/login/redis.sock RAILS_ENV=production
    • bundle exec rake gitlab:setup RAILS_ENV=production

Login oraz hasło do konta administratora zostaną wyświetlone przez ostatnie polecenie na konsoli - zaleca się je zmienić po zalogowaniu się do GitLaba. Pierwsze ładowanie strony może potrwać nieco dłużej.

Integracja z repozytoriami MyDevil.net

Istnieje możliwość korzystania z GitLaba z naszymi repozytoriami Git. Wystarczy stworzyć link symboliczny do wybranego repo:

cd /home/login/gitlab-repo/gitlab_login/
rm -r gitlab_repo.git
ln -s /home/login/repo/git/widoczność_repo/nazwa_repo gitlab_repo.git

Odnośniki zewnętrzne