
Ostatnia aktualizacja: 03.02.2023 r.
Parę lat temu (a dokładnie w grudniu 2017 roku) postanowiłem postawić lokalnie w firmie system do obsługi projektów programistycznych, który jest mocno połączony z systemem kontroli wersji Git. Mój wybór padł na darmową wersję GitLab`a 10.2.0 i muszę przyznać, że jestem z niego bardzo zadowolony mimo, iż wykorzystuję tylko część jego możliwości. Plusem tego rozwiązania jest ciągły rozwój - nowe wersje wychodzą co miesiąc, choć nie wszystkie funkcje są dostępne w darmowej wersji, jednak zdarzają się sytuacje, iż po paru miesiącach przechodzą one na darmowy tier jak np. powiązywanie ticketów, Service desk, Design Management, Package Managers i wiele innych.
Poniżej zostawiam ku pamięci kroki, jakie robiłem podczas przygotowywania systemu na CentOS 7 (jeśli mnie pamięć nie myli to użyłem wariantu DVD z GUI, które później usunąłem, bo mi przeszkadzało 😆).
Przed przystąpieniem do konfiguracji w pierwszej kolejności aktualizuję system i pakiety do najnowszych dostępnych wersji.
sudo yum check-update ; sudo yum update -y
sudo yum install curl policycoreutils openssh-server openssh-clients -y
sudo systemctl enable sshd ; sudo systemctl start sshd
sudo yum install postfix
sudo systemctl enable postfix ; sudo systemctl start postfix
sudo firewall-cmd --permanent --add-service=http ; sudo systemctl reload firewalld
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
sudo gitlab-ctl reconfigure
Poniższe kroki wykonuję z poziomu swojego komputera.
git init
git status
git add .
git commit -m "Initial commit"
git push origin master --all --tags
sudo nano /etc/gitlab/gitlab.rb
[...]
external_url 'https://domena.pl'
### Let`s Encrypt
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['adres_email']
[...]
sudo gitlab-ctl reconfigure ; sudo gitlab-ctl restart
sudo nano /etc/gitlab/gitlab.rb
[...]
### Email Settings
gitlab_rails['gitlab_email_enabloed'] = true
gitlab_rails['gitlab_email_from'] = 'adres@email.pl'
gitlab_rails['gitlab_email_display_name'] = '? | GitLab'
gitlab_rails['gitlab_email_reply_to'] = 'adres@email.pl'
gitlab_rails['gitlan_emil_subject_suffix'] = '[GitLab]'
[...]
### GitLab email server settings
###! Docs: https://docs/gitlab.com/omnibus/settings/smtp.html
###! **Use smtp instead of sendmail/postfix.**
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "nazwa.home.pl"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "adres@email.pl"
gitlab_rails['smtp_password'] = "hasło"
gitlab_rails['smtp_domain'] = "nazwa.home.pl"
gitlab_rails['smtp_authentication'] = login
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
[...]
sudo gitlab-ctl reconfigure ; sudo gitlab-ctl restart