fbpx

Kendi Git Sunucunu Kur – Ubuntu Gitea Kurulumu

Bu makalemizde Gitea’yı inceleyerek, kurulumlarını yapıp kendi git sunucumuzu kurmuş olacağız. Adım adım kurulumlara başlayalım. Öncelikle gitea’yı tanıyalım.

Gitea Nedir?

Gitea, kendi sunucularınızda Git servisi oluşturma imkanı sunar. Github arayüzüne benzer, daha basite indirgenmiş bir arayüze sahiptir. Kullanımı oldukça kolay ve Github’a oldukça benzerdir. Bir nevi size özel Github sunucusu kurduğunuzu düşünün.

Gitea, MIT lisanslı bir açık kaynak yazılımıdır. Golang’ın derlenebileceği her yerde çalışır. Windows, Linux, ARM vb. tüm platformlarda çalışma sağlayabilir. Biz sizlere bugün Ubuntu üzerinde nasıl kurulum yapabileceğinizi göstereceğiz. Haydi kuruluma başlayalım.

Gitea Ubuntu Kurulumu

Öncelikle gerekli bağımlılıkları yüklememiz ve Ubuntu sunucumuzun güncel olduğunu kontrol etmemiz gerek.

MariaDB Ve Git Kurulumu
sudo apt update
sudo apt install -y git mariadb-server mariadb-client

Gitea, sql olarak MariaDB,MySQL,SQlite gibi veritabanlarını kullanır. Biz burada MariaDB kullanmayı tercih ettik. Siz isterseniz desteklenen diğer veritabanlarından birini seçip kurulum sağlayabilirsiniz.

Gitea için en başta yapmamız gereken kurulumlardan bir diğeri ise git kurulumudur. Yukarıda yazdığımız komut ile, hem mariaDB hem de git kurulumu sağlanmış olacaktır.

Gitea kullanıcı oluşturma

Şimdi Gitea’nın çalışacağı bir kullanıcı oluşturalım.

sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git
Gitea binary dosyasını indirmek

Temel olarak hazırız. Şimdi, Gitea’yı indirebiliriz. En son sürümünü aşağıdaki komut ile indirebiliriz. Sürümleri incelemek için Gitea Releases sayfasından ulaşabilirsin.

sudo wget -O /usr/local/bin/gitea https://dl.gitea.io/gitea/1.20.3/gitea-1.20.3-linux-amd64

İndirme işlemi tamamlandıktan sonra dosya izinlerini ayarlamamız gerekiyor. Gerekli komut yazalım:

sudo chmod +x /usr/local/bin/gitea
Dizin oluşturmak

Gitea için gerekli birkaç dizin mevcut. Aşağıdaki komutları sırasıyıla çalıştırarak bu dizinleri oluşturalım.

sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo chown -R git:git /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/

Aşağıdaki komutlar ile de, Gitea’nın konfigürasyon ve log için kullanacağı dizinleri oluşturalım.

sudo mkdir -p /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea
Gitea’yı systemd servisi olarak ayarlamak

Gitea’yı servis olarak ayarlayabilmek için bazı ayarlar gerekmektedir. Bu ayarları ekleyebilmek için şu komutu kullanmalısınız :

sudo nano /etc/systemd/system/gitea.service

Ardından içeriği aşağıdaki gibi olmalıdır :

[Unit]
Description=Gitea
After=syslog.target
After=network.target
# If using MySQL/MariaDB
After=mariadb.service
# If using PostgreSQL
#After=postgresql.service

[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

Servis dosyasını kaydedip ardından çıkış yapın. Kayıt edip çıkmak için CTRL + X yapıp ardından Y tuşuna basarsanız kayıt edip çıkabilirsiniz.

Servisi başlatmak ve otomatik başlamasını sağlamak

Artık Gitea’yı başlatmak için hazırız. Gerekli eklentilerimizi kurduk, ayarlarımızı yaptık. Şimdi hazırlamış olduğumuz Gitea servisimizi ayağı kaldırmakta, bu işlemi yapabilmek için şu komutları aşağıdaki komutları kullanın.

sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea

Tüm her şeyi tamamladıktan sonra, gitea servisinin ayağa kalkıp kalkmadığını kontrol etmemiz gerek. Aşağıdaki komut satırı ile hızlı bir şekilde kontrol sağlayabiliriz.

sudo systemctl status gitea

Bu kodu çalıştırdıktan sonra sizlere aşağıda bulunan görseldeki gibi bir çıktı gelecektir.
Gitea durum bilgisi

Yukarıdaki görselde de görebileceğiniz gibi Active kısmında yeşil renkte bir “Active” yazısını görüyorsanız Gitea servisi başarılı bir şekilde başlamış demektir. Bu haliyle şuanda her şeyimiz hazır gözüküyor. Şimdi http://<sunucu-ip-adresi>:3000 adresine giderek Gitea web ara yüzüne erişebilirsiniz.

Web arayüzü geldikten sonra karşınıza “Başlangıç Yapılandırması” sayfası gelecektir. Bu yapılandırmayı yaparak Gitea kullanımına başlayabilirsiniz.

Gitea Başlangıç Yapılandırması

Bu aşamaya kadar, bildiğiniz üzere Gitea kullanımı için gerekli temel kurulumları ve servisleri tanımladık. Artık Gitea aktif olarak çalışmakta ve tüm ayarları sağlanmış şekildedir. Başlangıç yapılandırmasını yaparak işleme devam edelim.

Veritabanı ayarları

Başlangıç yapılandırmasına başladığınızda sayfanın en başında sizleri “Veritabanı ayarları” karşılayacaktır. Burada doldurmanız gereken bir kaç bilgi mevcut. Hatırlarsanız yazının en başında MariaDB kurulumu sağlamıştık. Burada bununla ilgili bilgileri vermemiz gerek.

Veritabanı türü: MYSQL

Sunucu: ip-adresiniz:3306

Kullanıcı adı: gitea

Parola: Belirlediğiniz parola

Veritabanı adı: gitea

Sizden istediği veriler yukarıdaki gibidir. Burada yapmamız gereken bir kaç ayar mevcut. Sunucu kısmına oluşturmuş olduğunuz sunucunun ip adresini yazmalısınız. Eğer bilgisayarınızda IIS veya başka bir şey üzerinde deniyorsanız veya local bir yerde deniyorsanız localhost:3306 olarak tanımlamanız yeterli olacaktır.

Veritabanı türü için otomatik olarak seçili gelen MYSQL seçeneği kalabilir. Keza seçeneklere baktığınızda MariaDB göremeyeceksiniz, sebebi ise MYSQL ile aynı yapıya benzer çalışmaktadır. Bu nedenle MYSQL seçili kalması yeterli olacaktır.

Kullanıcı adı, parola ve veritabanı adı kısımlarını doldurmanız için öncesinde ilgili veritabanı ve kullanıcı bilgilerini oluşturmanız gerekmektedir. Şimdi tekrar CMD ekranımıza dönerek ilgili kullanıcı ve veritabanı bilgilerini oluşturalım.

Kullanıcı ve veritabanı oluşturma

Öncelikle veritabanımızın durumunu öğrenelim :

sudo systemctl status mariadb

Eğer yine yeşil olarak Active yazısını görüyorsanız, problemsiz bir şekilde çalışıyor demektir. Eğer çalışmıyor ise aşağıdaki kodu kullanarak çalıştırabilirsiniz :

sudo systemctl start mariadb

Kullanıcı ve veritabanı oluşturmadan önce mariaDB üzerine root bilgisi ile giriş sağlamamız gerek. Giriş sağlamak için şu kodu kullanın :

sudo mysql -u root -p

Şifrenizi girip giriş yaptıktan sonra karşınıza mariaDB console gelecektir. Bu konsol üzerinden gerekli sql kodlarımızı yazarak işlemlerimizi yapabiliriz. Öncelikle mariaDB üzerinde bulunan kullanıcılarımızı kontrol edelim :

SELECT user, host FROM mysql.user;
mariadb user

Kodu çalıştırdığınızda, yukarıdaki görseldeki gibi bir çıktı elde edeceksiniz. Bu görselde gitea kullanıcısı mevcut, sizlerde çıkmayabilir. Ben daha önceden gitea kullanıcısı açtığım için gözükmekte, sizlerde görmüyor iseniz bu problem değil, birazdan oluşturacağız.

Şimdi, bizden istenilen veritabanı kullanıcısını oluşturalım. Aynı ekrandan devam ederek aşağıdaki kodu çalıştırıp “gitea” adında bir kullanıcı oluşturalım.

CREATE USER 'gitea'@'localhost' IDENTIFIED BY 'sifre';

Şifre kısmına istediğiniz şifreyi girerek kullanıcı bilginizi oluşturabilirsiniz. Bu komut ile “gitea” adında bir kullanıcı oluşturduk ve “localhost” üzerinden bağlanma yetkisini vermiş olduk. Tekrardan yukarıda bahsettiğimiz tüm kullanıcıları gösterme kodu ile, kullanıcı listesini kontrol edebilirsiniz. Eğer listede “gitea” kullanıcısını görüyor iseniz işlem başarılı bir şekilde gerçekleşmiştir.

Veritabanı oluşturmak için aşağıdaki sql komutunu kullanalım :

CREATE DATABASE gitea;

Oluşturmuş olduğumuz veritabanına yetkilendirmemizi atayalım :

GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost';
FLUSH PRIVILEGES;

Böylelikle kullanıcı ve veritabanı oluşturma işlemini tamamlamış oluyoruz. Oluşturduğunuz kullanıcıyı test etmek isterseniz, öncelikle root ile bağlandığınız kullanıcıdan çıkış yapıp ardından gitea kullanıcısı ile giriş yapmanız gerekmektedir.

Genel ayarlar

Bu kısımda gerekli tüm alanlar otomatik gelecektir. Site başlığı ve sunucu alan adı kısımlarını güncelleyebilirsiniz. Sunucu alan adı kısmına hazırlamış olduğunuz sunucunun ip bilgisini girmeniz yeterli olacaktır. Eğer dolu geldiyse ve doğruysa değiştirmenize gerek yoktur.

İsteğe bağlı ayarlar

Bu kısımda ekstra yapabileceğiniz bir çok özellik mevcut. Örneğin ” Kendi kendine kayıt olmayı devre dışı bırak” seçeneğini seçerek kullanıcıların kayıt olmasını önleyebilir, sadece yöneticinin kayıt yapmasına olanak sağlayabilirsiniz. Ayrıca “OpenID ile kendi kendine kaydı etkinleştir” kısmını da kapatabilirsiniz. Bu sayede tüm kayıtları yönetici yapabilir. Burada bulunan diğer seçenekler de inceleyebilir, kendinize göre düzenleyebilirsiniz.

Bu seçenekler sadece bu ekrandan değil, CMD üzerinden sunucu dizininde bulunan .ini dosyası içerisinden de düzenleme sağlayarak daha sonradan güncelleme yapabilirsiniz. Yani merak etmeyin, tek seferlik bir şey değil, istediğiniz zaman bu ayarları değiştirebilirsiniz.

E posta ayarları

Bu kısım, oluşturmuş olduğunuz repo içerisindeki konuların mail ile iletimi için oldukça önemlidir. Bir şirket çatısı altında bu yapıyı kullanırsanız, geliştirici arkadaşların bir değişikliği sonrasında veya bir konu açması, tamamlaması sonrasında ilgili kullanıcılara sistem tarafında mail göndermesini sağlar. Aynı sistem bildiğiniz üzere Github üzerinde mevcut, birebir aynı şekilde çalıştığını düşünebilirsiniz.

Burada standart mail ayarlarını uygulayabilirsiniz, bu kısmı daha sonradan da düzenleyebilirsiniz.

Evet arkadaşlar, bu aşamaya kadar başarılı bir şekilde ilerlediyseniz kendi git sunucunuzu başarılı bir şekilde kurmuş oluyoruz. Gitea Kurulumu hakkında herhangi bir sorunuz varsa bizimle iletişime geçebilir, yorum bırakabilirsiniz.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

  • Anasayfa
  • Hakkımızda
  • Hizmetler
  • Bizden Haberler
  • İletişim