GitLab: Różnice pomiędzy wersjami

Linia 2: Linia 2:
  
 
Przed przystąpieniem do instalacji należy:
 
Przed przystąpieniem do instalacji należy:
# Przeprowadzić wstępną konfigurację [[RVM]] (dla wersji ruby 2.1.3) i [[RoR]].
+
# Przeprowadzić wstępną konfigurację [[RVM]] (dla wersji ruby 2.1.16) i [[RoR]].
 
# Dodać bazę i użytkownika [[MySQL]].
 
# Dodać bazę i użytkownika [[MySQL]].
  
Linia 12: Linia 12:
  
 
Następnie należy:
 
Następnie należy:
# Pobrać źródła GitLab <code>git clone <nowiki>https://gitlab.com/gitlab-org/gitlab-ce.git</nowiki> -b 7-6-stable gitlab</code>.
+
# Zainstalować gem bundler <code>gem install bundler</code>.
 +
# Pobrać źródła GitLab <code><nowiki>git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-11-stable gitlab</nowiki></code>.
 
# Zmienić nazwę pobranego folderu na <code class="directory">public_ruby</code> i do niego przejść <code>rm -r public_ruby && mv gitlab public_ruby && cd public_ruby</code>.
 
# Zmienić nazwę pobranego folderu na <code class="directory">public_ruby</code> i do niego przejść <code>rm -r public_ruby && mv gitlab public_ruby && cd public_ruby</code>.
 
# Skopiować przykładową konfigurację bazy danych <code>cp config/database.yml.mysql config/database.yml</code>.
 
# Skopiować przykładową konfigurację bazy danych <code>cp config/database.yml.mysql config/database.yml</code>.
Linia 25: Linia 26:
 
#* port na 80 (HTTP) lub 443 (HTTPS),
 
#* port na 80 (HTTP) lub 443 (HTTPS),
 
#* https na true jeśli strona będzie korzystać z HTTPS,
 
#* https na true jeśli strona będzie korzystać z HTTPS,
#* user na nazwę użytkownika konta,
+
#* user na nazwę użytkownika konta (należy również usunąć znak komentarza <code>#</code> przed user),
#* email_from na Twój adres e-mail.
+
#* email_from na adres e-mail z którego GitLab ma wysyłać maile,
# A w sekcji gitlab_shell zmienne:
+
#* email_display_name na dowolną nazwę, która będzie się wyświetlała zamiast adresu email,
 +
#* email_reply_to na adres e-mail na który mają być wysyłana odpowiedzi na emaile wysłane przez GitLab.
 +
# W sekcji satellites zmienną path na <code class="directory">/usr/home/''login''/gitlab-satellites/</code>.
 +
# W sekcji gitlab_shell zmienne:
 
#* path na <code class="directory">/usr/home/''login''/gitlab-shell/</code>,
 
#* path na <code class="directory">/usr/home/''login''/gitlab-shell/</code>,
 
#* repos_path na <code class="directory">/usr/home/''login''/gitlab-repo/</code>,
 
#* repos_path na <code class="directory">/usr/home/''login''/gitlab-repo/</code>,
 
#* hooks_path na <code class="directory">/usr/home/''login''/gitlab-shell/hooks/</code>.
 
#* hooks_path na <code class="directory">/usr/home/''login''/gitlab-shell/hooks/</code>.
# Stworzyć foldery <code>mkdir -p /usr/home/''login''/gitlab-repo/root</code>.
+
# W sekcji git zmienną bin_path na <code class="directory">/usr/local/bin/git</code>.
 +
# Stworzyć foldery <code>mkdir -p ~/gitlab-repo/root ~/gitlab-shell/hooks ~/gitlab-satellites</code>.
 
# Wyłączyć obsługę kerberosa oraz zainstalować zależności gitlaba:
 
# Wyłączyć obsługę kerberosa oraz zainstalować zależności gitlaba:
 
#* <code>sed -i "" '/omniauth-kerberos/d' Gemfile</code>
 
#* <code>sed -i "" '/omniauth-kerberos/d' Gemfile</code>
Linia 37: Linia 42:
 
#* <code>sed -i "" '/timfel-krb5-auth/d' Gemfile.lock</code>
 
#* <code>sed -i "" '/timfel-krb5-auth/d' Gemfile.lock</code>
 
#* <code>bundle config build.charlock_holmes --with-icu-dir=/usr/local</code>
 
#* <code>bundle config build.charlock_holmes --with-icu-dir=/usr/local</code>
#* <code>bundle config build.nokogiri --with-iconv-include=/usr/local/include --with-iconv-lib=/usr/local/lib</code>
+
#* <code>bundle config build.nokogiri --with-xml2-include=/usr/local/libxml2 --with-xml2-lib=/usr/local/lib/ --with-iconv-include=/usr/local/include --with-iconv-lib=/usr/local/lib</code>
#* <code>bundle install --deployment --without development test postgresql aws</code>
+
#* <code>bundle install --deployment --without development test postgresql aws kerberos</code>
 
# Uruchomić serwer redis oraz przystosować konfigurację GitLaba:
 
# Uruchomić serwer redis oraz przystosować konfigurację GitLaba:
 
#* <code>screen redis-server --unixsocket /usr/home/''login''/redis.sock --port 0</code>
 
#* <code>screen redis-server --unixsocket /usr/home/''login''/redis.sock --port 0</code>
 
#* <code>echo "production: unix:/usr/home/''login''/redis.sock" > config/resque.yml</code>
 
#* <code>echo "production: unix:/usr/home/''login''/redis.sock" > config/resque.yml</code>
 
# Skonfigurować gitlab_shell oraz GitLaba:
 
# Skonfigurować gitlab_shell oraz GitLaba:
#* <code>bundle exec rake gitlab:shell:install[v.2.4.0] REDIS_URL=unix:/usr/home/''login''/redis.sock RAILS_ENV=production</code>
+
#* <code>bundle exec rake gitlab:shell:install[v2.6.3] REDIS_URL=unix:/usr/home/''login''/redis.sock RAILS_ENV=production</code>
 
#* <code>bundle exec rake gitlab:setup RAILS_ENV=production</code>
 
#* <code>bundle exec rake gitlab:setup RAILS_ENV=production</code>
 
#* <code>bundle exec rake sidekiq:start RAILS_ENV=production</code>
 
#* <code>bundle exec rake sidekiq:start RAILS_ENV=production</code>

Wersja z 16:27, 3 cze 2015

GitLab to manager repozytoriów Git.

Przed przystąpieniem do instalacji należy:

  1. Przeprowadzić wstępną konfigurację RVM (dla wersji ruby 2.1.16) i RoR.
  2. Dodać bazę i użytkownika MySQL.

Przed dalszymi krokami należy się zalogować na shellu MyDevil. Trzeba przejść do katalogu /usr/home/login/domains/domena/, gdzie za domena należy podstawić wcześniej skonfigurowaną domenę.

Instalacja

Następnie należy:

  1. Zainstalować gem bundler gem install bundler.
  2. Pobrać źródła GitLab git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-11-stable gitlab.
  3. Zmienić nazwę pobranego folderu na public_ruby i do niego przejść rm -r public_ruby && mv gitlab public_ruby && cd public_ruby.
  4. Skopiować przykładową konfigurację bazy danych cp config/database.yml.mysql config/database.yml.
  5. Ustawić w pliku config/database.yml w sekcji production zmienne:
    • database na nazwę bazy danych (np. m1064_gitlab),
    • host na host bazy danych (mysqlX.mydevil.net),
    • username na nazwę użytkownika bazy danych (np. m1064_gitlab),
    • password na hasło bazy danych.
  6. Skopiować przykładową konfigurację gitlab cp config/gitlab.yml.example config/gitlab.yml.
  7. Ustawić w pliku config/gitlab.yml w sekcji gitlab zmienne:
    • host na domenę aplikacji,
    • port na 80 (HTTP) lub 443 (HTTPS),
    • https na true jeśli strona będzie korzystać z HTTPS,
    • user na nazwę użytkownika konta (należy również usunąć znak komentarza # przed user),
    • email_from na adres e-mail z którego GitLab ma wysyłać maile,
    • email_display_name na dowolną nazwę, która będzie się wyświetlała zamiast adresu email,
    • email_reply_to na adres e-mail na który mają być wysyłana odpowiedzi na emaile wysłane przez GitLab.
  8. W sekcji satellites zmienną path na /usr/home/login/gitlab-satellites/.
  9. 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/.
  10. W sekcji git zmienną bin_path na /usr/local/bin/git.
  11. Stworzyć foldery mkdir -p ~/gitlab-repo/root ~/gitlab-shell/hooks ~/gitlab-satellites.
  12. 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-xml2-include=/usr/local/libxml2 --with-xml2-lib=/usr/local/lib/ --with-iconv-include=/usr/local/include --with-iconv-lib=/usr/local/lib
    • bundle install --deployment --without development test postgresql aws kerberos
  13. Uruchomić serwer redis oraz przystosować konfigurację GitLaba:
    • screen redis-server --unixsocket /usr/home/login/redis.sock --port 0
    • echo "production: unix:/usr/home/login/redis.sock" > config/resque.yml
  14. Skonfigurować gitlab_shell oraz GitLaba:
    • bundle exec rake gitlab:shell:install[v2.6.3] REDIS_URL=unix:/usr/home/login/redis.sock RAILS_ENV=production
    • bundle exec rake gitlab:setup RAILS_ENV=production
    • bundle exec rake sidekiq:start RAILS_ENV=production

Login oraz hasło do konta administratora zostaną wyświetlone przez przedostatnie 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