%50 indirim tüm planlarda, sınırlı süreyle. Başlangıç fiyatı $2.48/mo
Gözlükler

Gözlükler

Gogs, sorunsuz, kendi kendine barındırılan bir Git hizmetidir. Gitea ve GitLab'den daha hafiftir ve Go ile yazılmıştır, 512 MB VPS'de ve hatta Raspberry Pi'de rahatça çalışır. Gitea'nin öncüsü olan orijinal Go tabanlı Git sunucusu, daha küçük bir yüzey alanını tercih eden kullanıcılar için hâlâ aktif olarak korunmaktadır.

Sürüm

0.14.2

İşletim Sistemi

Ubuntu Server 24.04 LTS

Min. RAM

1 GB

IP Tipleri

IPV4,IPV6

Erişim

  • Tarayıcını aç ve şu adresi ziyaret et: https://<SERVER_IP>
  • Tarayıcı SSL uyarısı bekleniyor (kendinden imzalı sertifika)
  • Yeni bir hesap kaydedin
  • İlk kayıtlı hesap Yönetici olur

Kendi Kendine Kaydı Devre Dışı Bırak (İsteğe bağlı)

Varsayılan olarak kullanıcının kendi kendine kaydı etkindir.

1. Yapılandırma dosyasını düzenleyin: /etc/gogs/conf/app.ini

2. Altında [auth] bölüm, değişiklik: DISABLE_REGISTRATION = false to DISABLE_REGISTRATION = true

3. Gogs'u yeniden başlatın:

systemctl restart gogs

Önemli Dosyalar ve Dizinler

  • Kurulum dizini: /opt/gogs
  • Yapılandırma dosyası: /etc/gogs/conf/app.ini
  • Uygulama verileri: /var/lib/gogs
  • Depolar: /var/lib/gogs/repositories
  • Günlükler: /var/log/gogs
  • Sistem hizmeti: /etc/systemd/system/gogs.service
  • Nginx config: /etc/nginx/sites-available/gogs.conf
  • TLS sertifikaları: /etc/nginx/ssl/

Git Kullanımı

HTTPS (kendinden imzalı sertifika):

GIT_SSL_NO_VERIFY=true git clone https://<SERVER_IP>/<USERNAME>/<REPOSITORY>.git

SSH (Yerleşik sunucu):

git clone ssh://git@<SERVER_IP>:2222/<USERNAME>/<REPOSITORY>.git

Servis Yönetimi

Goglar:

systemctl status gogs
systemctl restart gogs

Nginx:

systemctl status nginx
systemctl restart nginx

PostgreSQL:

systemctl status postgresql
systemctl restart postgresql

Notlar

  • Ana yapılandırma dosyası şurada bulunur: /etc/gogs/conf/app.ini. Yapılandırma dosyasını değiştirdikten sonra hizmeti kullanarak yeniden başlatın. systemctl restart gogs.
  • Nginx yükleme sınırı şu şekilde tanımlanır: /etc/nginx/sites-available/gogs.conf kullanarak client_max_body_size. Büyük depolar için bunu artırın ve Nginx'i yeniden başlatın.
  • Büyük dağıtımlar için yorumlardan vazgeçebilirsiniz LimitMEMLOCK=infinity Ve LimitNOFILE=65535 in /etc/systemd/system/gogs.service, sonra koş systemctl daemon-reload ve Gogs'u yeniden başlatın.
  • Veritabanı kimlik bilgileri şurada tanımlanır: /etc/gogs/conf/app.ini.
  • Üretimde kullanım için kendinden imzalı sertifikanın geçerli bir Let's Encrypt sertifikasıyla değiştirilmesi önerilir.
  • Kendinden imzalı bir sertifika kullanılıyorsa HTTPS klonlaması için GIT_SSL_NO_VERIFY=true.

Bir Alan Adı ile SSL Etkinleştirme

1. Alan adını sunucu IP'sine yönlendir.

2. Gogs yapılandırmasını güncelleyin (/etc/gogs/conf/app.ini):

EXTERNAL_URL = https://yourdomain.com/
DOMAIN = yourdomain.com
SSH_DOMAIN = yourdomain.com

3. Değişiklikleri uygulamak için Gogs hizmetini yeniden başlatın:

systemctl restart gogs

3. Nginx yapılandırmasını düzenleyin ve her ikisini de değiştirin server_name <IP>; alan adın ile (<your-domain>) hem HTTP (port 80) hem HTTPS (port 443) blokları için:

vim /etc/nginx/sites-available/gogs.conf

4. Certbot'u yükleyin:

apt install -y certbot python3-certbot-nginx

5. Geçerli bir Let's Encrypt sertifikası oluşturmak için aşağıdaki komutu çalıştırın:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

6. Nginx yapılandırmasında SSL yollarını değiştirin:

vim /etc/nginx/sites-available/gogs.conf
# Before:
    # ssl_certificate /etc/nginx/ssl/gogs.crt;
    # ssl_certificate_key /etc/nginx/ssl/gogs.key;
# After:
    # ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    # ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

7. Değişiklikleri uygulamak için Nginx'i yeniden başlatın:

systemctl restart nginx

8. Tarayıcınızı açın ve şu adresi ziyaret edin: https://yourdomain.com

DevOps Araçları'nda daha fazlası

İlgili uygulamalar.

Gog'ları şimdi konuşlandırın. 2,48 $/ay'dan başlayan fiyatlarla.