İçeriğe geç
Melinhost

Gitea ile kendi Git sunucunuzu kurun ve güvenli hâle getirin

Hafif, hızlı ve ücretsiz: Docker Compose ile Gitea kurulumu, HTTPS, SSH erişimi, kayıt kapatma ve yedekleme.

Rehberler · 3 dk okuma

gitea-self-hosted-git

Gitea, kendi sunucunuzda çalışan hafif bir Git hizmetidir: depolar, sorun takibi, çekme istekleri ve (isteğe bağlı) CI. Birkaç yüz MB bellekle rahat çalışır; küçük bir bulut sunucu yeterlidir. Kodunuz sizde kalır ve kullanıcı başına ücret ödemezsiniz.

Gereksinimler

  • Docker ve Compose (bkz. Docker kurulumu).
  • Bir alan adı (ör. git.alanadiniz.com) ve Caddy ile HTTPS.

1. Compose dosyası

mkdir -p ~/gitea && cd ~/gitea

compose.yaml:

services:
  gitea:
    image: gitea/gitea:latest
    container_name: gitea
    restart: unless-stopped
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__server__DOMAIN=git.alanadiniz.com
      - GITEA__server__ROOT_URL=https://git.alanadiniz.com/
      - GITEA__service__DISABLE_REGISTRATION=true
      - GITEA__service__REQUIRE_SIGNIN_VIEW=true
    volumes:
      - ./data:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "127.0.0.1:3000:3000"
      - "2222:22"

Web arayüzü yalnızca yerel 3000 portuna bağlanır; dışarıya ters proxy sunar. Git’in SSH erişimi için 2222 numaralı port açılır (sunucunun kendi SSH’ı 22’de kalır). DISABLE_REGISTRATION yeni kullanıcı kaydını kapatır, REQUIRE_SIGNIN_VIEW depoları girişsiz görüntülemeyi engeller.

2. Başlatın ve kurulumu tamamlayın

docker compose up -d
sudo ufw allow 2222/tcp

Tarayıcıdan https://git.alanadiniz.com adresini açın (önce Caddy’yi yönlendirin) ve kurulum sihirbazında veritabanı olarak SQLite’ı (küçük ekipler için yeterli) bırakıp yönetici hesabını oluşturun. Kurulumdan sonra yönetici paneli ve app.ini ayarları ./data/gitea/conf altında bulunur.

3. İlk deponuz ve SSH anahtarı

  1. Ayarlar › SSH/GPG Anahtarları bölümüne açık SSH anahtarınızı ekleyin.
  2. Yeni bir depo oluşturun ve klonlayın: git clone ssh://git@git.alanadiniz.com:2222/kullanici/depo.git

4. Sertleştirme kontrol listesi

  • Kayıt kapalı: yeni kullanıcıları yöneticiden ekleyin.
  • İki adımlı doğrulama: yönetici dâhil herkes için açın (Ayarlar › Güvenlik).
  • Güçlü parolalar ve mümkünse yalnızca SSH anahtarıyla kullanım.
  • Güncel kalın: docker compose pull && docker compose up -d; sürüm notlarını okuyun.
  • Güvenlik duvarı: yalnızca 22 (sunucu SSH), 80/443 (Caddy) ve 2222 (Git SSH) açık olsun (bkz. güvenlik kontrol listesi).
  • Webhook ve gizli anahtarlar: depolara parola/anahtar eklemeyin; CI gizli değişkenlerini kullanın.

Yedekleme

./data klasörü depoları, veritabanını ve ayarları içerir. Tutarlı yedek için Gitea’nın kendi komutunu kullanabilirsiniz:

docker exec -u git gitea gitea dump -c /data/gitea/conf/app.ini -f /data/gitea-dump.zip

Oluşan dosyayı sunucu dışına kopyalayın ve riskli güncellemelerden önce snapshot alın.

Melinhost ile başlayın

Gitea küçük bir bulut sunucuda rahatça çalışır; ekibiniz büyüdükçe paketinizi yükseltebilirsiniz.

İlgili yazılar

Çerez tercihleri

Sitenin çalışması için gerekli çerezleri kullanıyoruz. Analitik ve pazarlama çerezleri yalnızca onayınızla etkinleşir. Çerez Politikası