Raspberry Pi GITLab Sunucusu

Bu yazı, PiMyLifeUp - Raspberry Pi GITLab Server kaynağından Türkçe'ye çevrilerek hazırlanmıştır.

Bu eğitimde, Raspberry Pi'de GITLab adlı bir yazılım parçasını kurma adımlarından geçeceğim.

Raspberry Pi Gitlab

Bu yazılım temel olarak GIT eğitimimizin daha kapsamlı özelliklere sahip bir sürümüdür, ancak Raspberry Pi'de de çok daha talepkardır.

GitHub gibi bir GIT hosting hizmeti kullandıysanız, GITLab'i buna çok benzer bulacaksınız, GIT'e kullanışlı bir web önyüzü sağlar.

Web önyüzü, GIT deponuzda neler olduğuna dair yararlı bir görsel yorum sağladığından oldukça kullanışlı olabilir.

Ayrıca pull request'ler ve fork'lar gibi şeyleri kolayca yönetme yeteneği de sunar. GIT'i sık sık veya bir ekiple kullanmayı planlıyorsanız kurmak çok kullanışlı olabilir. Daha önce ele aldığım temel Raspberry Pi GIT sunucusundan biraz daha ileri bir adımdır.

Bu eğitim, Raspbian Jessie çalıştıran bir Raspberry Pi 3 üzerinde son olarak test edilmiştir.

Raspberry Pi GITLab Sunucusunu Kurma

Gitlab yazılımını kurma süreci oldukça basittir. GITLab yazılımı oldukça kaynak yoğun olabileceğinden bunu yalnızca temiz bir Raspberry Pi OS kurulumunda yapmanızı öneririm.

Gitlab'in community edition'ını kuracağız ve deposuna community edition GIT sayfalarına giderek göz atabilirsiniz.

1. GITLab'in kendisini kurmadan önce, önce birkaç başka şey kurmamız gerekiyor. Kurmamız gereken paketler CURL, OpenSSH sunucusu, postfix ve "deb"in HTTPS protokolünü desteklemesini sağlayan bir pakettir.

Bunları aşağıdaki komutu kullanarak kurabiliriz:

sudo apt install curl openssh-server ca-certificates postfix apt-transport-https

Not: Postfix'i kurarken birkaç ekstra şey yapmamız gerekecek.

2. Postfix kurulmaya başladığında aşağıdaki ekranla karşılaşacaksınız; bu ekran seçebileceğiniz çeşitli seçenekleri açıklar.

Kurulacak en kolay iki seçenek Internet Site seçeneği ve Local Only teslimat seçeneğidir.

Internet site seçeneği, tüm mail trafiğinizin SMTP (Simple Mail Transfer Protocol) üzerinden çalışmasına izin verir. Öte yandan, local only tam olarak söylediği şeyi yapar ve mail trafiğini yalnızca yerel olarak yönlendirir.

Postfix

OK'i seçin ve devam etmek için ENTER tuşuna basın.

3. Bir sonraki ekranda, Local only'i seçeceğiz, çünkü bu kurulumu en kolay olanıdır.

Ayrıca kullanışlıdır çünkü bu GITLab kurulumunu yalnızca yerel ağımız içinde kullanmayı planlıyoruz, bu yüzden zaten e-postaların yerel ağ dışına gönderilmesini istemiyoruz.

Postfix Yapılandırma

Kullanmak istediğiniz seçeneği seçtikten sonra, OK'i seçin ve ENTER tuşuna basın.

4. Bir sonraki ekran, Postfix'in kullanması için mail name'i (mail adı) ayarlamamızı isteyecektir. Bunu e-posta için kullanmayı planladığınız tam nitelikli alan adına ayarlamalısınız.

Örneğin, gus@example.com'u kullanmak isteseydim, System mail name:'i example.com'a ayarlardım.

Mail kullanmayı planlamadığımız için, sadece raspberrypi olarak bırakacağız.

Postfix Local Only

Kurulumu sonlandırmak için OK'i seçin ve ENTER tuşuna basın.

5. Bunların hepsi yapıldıktan sonra, GITLab GPG (GNU Privacy Guard) anahtarını almamız gerekiyor, bu Raspberry Pi'nin onların sunucularıyla iletişim kurarken verinizi şifrelemesine ve imzalamasına izin verecektir.

Anahtarı aşağıdaki komutla indirip ekleyebiliriz:

curl https://packages.gitlab.com/gpg.key | sudo apt-key add -

6. Bu sonunda yapıldığına göre, bir sonraki sürece başlayabiliriz. Bu, GITLab'in bağımlı olduğu tüm paketlerin kurulumunu başlatmaktır, lütfen bunun bu script'in yapması gereken oldukça fazla şey olduğundan biraz zaman alabileceğini unutmayın.

Kurulum script'ini indirip çalıştırmak için aşağıdaki komutu çalıştırın.

sudo curl -sS https://packages.gitlab.com/install/repositories/gitlab/raspberry-pi2/script.deb.sh | sudo bash

7. Bu kurulumu bitirdikten sonra, sonunda gerçekten Raspberry Pi GITLab sunucusunun kendisini kurmaya devam edebiliriz, bu da biraz zaman alacak bir başka süreçtir ve yaklaşık 150mb'lık bir indirmedir.

Kurulum sürecini başlatmak için terminalde bu komutu çalıştırın.

sudo apt-get install gitlab-ce

8. GITLab kurulumunu sonlandırmak için çalıştırılması gereken son komut aşağıda gösterilendir, bu komut tüm GITLab ayarlarını yapılandırıp kurar ve gerekli tüm veritabanlarını kurar.

sudo gitlab-ctl reconfigure

Artık GITLab başarıyla kurulmuş ve kullanıma hazır olmalı, sonraki birkaç adımda ilk deponuzu oluşturmayı ve ilk commit'i yapmayı ele alacağım.

İlk GITLab Projenizi Oluşturma

Artık Raspberry Pi Gitlab sunucunuz çalışıyor olmalı. Muhtemelen kendi projenizi ve deponuzu kurmak isteyeceksiniz, bunu daha önce hiç yapmadıysanız, aşağıdaki bilgiyi son derece kullanışlı bulmalısınız.

1. Yeni kurduğumuz GitLab sayfasına erişmek için, Raspberry Pi'nin yerel IP Adresine gitmemiz gerekecek, IP adresine sahip değilseniz hostname komutuyla hızlıca alabilirsiniz.

hostname -I

Raspberry Pi'nizin IP adresini aldıktan sonra, favori web tarayıcınızda yükleyin, benim durumumda, web tarayıcıma aşağıdakini yazardım.

http://192.168.1.105/

2. Şimdi root hesabı için parola belirlemenizi isteyen bir ekranla karşılaşacaksınız ve bu hesap GitLab'in hesabı üzerinde tam kontrole sahip olduğundan bunun için güvenli bir şey ayarlamanızı öneririm.

Seçtiğiniz parolayla mutlu olduğunuzda, Change your password butonuna basın.

Gitlab ilk ekran

3. Artık yeni parolanızla GitLab'e giriş yapabilirsiniz, kullanıcı adı için root kullandığınızdan emin olun.

Hazır olduğunuzda, sign in'e basın ve bir sonraki ekrana geçecektir.

Gitlab Giriş Ekranı

4. Raspberry Pi GitLab sunucusuna giriş yaptığımızda, yeni bir grup veya proje oluşturmak için birkaç buton içeren dashboard sayfası ile karşılaşacağız.

Eğitimimiz için New Project butonuna basacağız.

Gitlab Ana Ekran

5. New Project ekranı çeşitli farklı seçeneklerle doludur. GitLab, GitHub ve Bitbucket gibi çok çeşitli farklı hizmetlerden GIT projeleri içe aktarmanıza olanak tanır. Ancak, eğitimimiz için, sadece yeni bir depo oluşturacağız.

Burada ayarlamamız gereken ana şey proje adıdır; bu, proje yolu için en sağdaki metin kutusudur. pimylifeup adını kullanacağız.

Görünürlük seviyesini Private olarak bırakacağız ve bu, açıkça başka birine izin vermediğimiz sürece yalnızca kullanıcımızın depoyla etkileşim kurabileceği anlamına gelir.

Diğer iki seçenek, giriş yapmış herhangi bir kullanıcının onu klonlayabilmesine izin veren Internal ve herkesin depoyu klonlamasına izin veren Public'tir.

Gitlab Yeni Proje

Burada ayarladığınız şeyden memnun olduğunuzda, "Create Project" butonuna tıklayın.

6. Şimdi karşılaşacağınız ekran boş proje sayfasıdır, şu anda burada yapılacak çok fazla şey yok, ancak yakında buna bazı dosyalar ekleyip dolduracağız.

Gitlab Proje Ekranı

7. Şimdi terminale geri dönerek, yepyeni deponuzu klonlayacağız ve ilk dosyamızı ekleyeceğiz.

Başlamak için önce bazı detayları ayarlamamız gerekiyor, aşağıdaki username ve email'i istediğiniz herhangi bir şeye değiştirebilirsiniz.

git config --global user.name "Administrator"
git config --global user.email "admin@example.com"

8. Bu yapıldıktan sonra, farklı bir proje adı kullanmayı seçtiyseniz pimylifeup'ı kendi adınızla değiştirdiğinizden emin olarak yeni deponuzu klonlamaya devam edebiliriz.

Şimdi depoyu klonlamak için aşağıdaki birkaç komutu çalıştıracağız, bu depoyu alacak ve bizi onun dizinine taşıyacaktır.

cd ~
git clone http://raspberrypi/root/pimylifeup.git
cd pimylifeup

9. Depoyu klonladığımıza göre, ilk dosyamızı oluşturup commit edelim. Bu komut, Readme adlı boş bir dosya oluşturacaktır, ancak bu size dosyaları nasıl commit edeceğiniz konusunda bir fikir vermelidir.

Bu dosyayı eklemek ve commit etmek için, aşağıdaki birkaç komutu çalıştırın, biraz kendini açıklayıcı olmalılar.

touch README.md
git add README.md
git commit -m "add readme"
git push -u origin master

10. Artık proje sayfanızı yenileyebilir ve yeni commit'inizi görebilirsiniz.

Artık commit'e tıklayabilir ve Git'in komut satırına güvenmek yerine değişiklikleri web arayüzü içinde inceleyebilirsiniz.

GITLab Commit Eklendi

Tebrikler, GitLab sunucunuz artık ilk projesi oluşturulmuş şekilde çalışıyor olmalı.

GitLab'in yapabileceklerinin sadece yüzeyini çizdik, ayrıca onu CI Build'leri kurmak, fork'ları ve merge request'leri yönetmek ve sorunları kaydetmeye ve proje kilometre taşları belirlemeye yardımcı olmak için de kullanabilirsiniz.

Sonuç

Bu eğitimin size bir Raspberry Pi GITLab Sunucusunu nasıl kuracağınızı gösterdiğini ve herhangi bir sorunla karşılaşmadığınızı umuyorum. Sağlam bir GIT kurulumu ayarlamak isteyen herkes için kesinlikle harika bir Pi projesi.

Herhangi bir geri bildiriminiz, ipucunuz varsa veya paylaşmak istediğiniz herhangi bir sorunla karşılaştıysanız, lütfen aşağıya yorum bırakmaktan çekinmeyin.