Kendi Kod Deponuzu Oluşturmak için Gitea'yı Raspberry Pi'ye Kurun

Kendi Kod Deponuzu Oluşturmak için Gitea'yı Raspberry Pi'ye Kurun
Sizin gibi okuyucular MUO'yu desteklemeye yardımcı oluyor. Sitemizdeki bağlantıları kullanarak bir satın alma işlemi gerçekleştirdiğinizde, bir ortaklık komisyonu kazanabiliriz. Devamını oku.

Git, yazılım geliştiricileri, kodlayıcılar ve tamirciler tarafından açık kaynak projeleri üzerinde işbirliği yapmak ve bunları dağıtmak için kullanılan bir sürüm kontrol sistemidir. Git'i kullanarak, her boyutta projeyi yönetebilir, kod değişikliklerini ve birleştirmeleri alabilir ve kullanıcıların depolarınızı kendi makinelerine klonlamasına izin verebilirsiniz. Açık kaynak ekosistemi Git üzerinde çalışır ve MakeUseOf.com'da yer alan projelerin birçoğu GitHub'dan gelen kaynakları kullanmayı içerir. Gitea ile tamamen işlevsel Git havuzlarınızı kendi evinizde bir Raspberry Pi üzerinde barındırabilirsiniz.





GÜNÜN MAKALE VİDEOSU

GitHub Kullanmak Yerine Neden Kendi Git Hizmetinizi Raspberry Pi'de Barındırın?

  React'ten dosyaların listesini gösteren bir GitHub deposu sayfası's source code

55 milyon kullanıcıyla, GitHub, ücretsiz ve açık kaynaklı yazılımların en büyük deposudur Dünya'da, ancak şu anki sahibi Microsoft, koruyucu rolü için doğal olarak uygun değil. Şirketin önceki CEO'ları Linux'u ve Genel Kamu Lisansını 'bir kanser' olarak tanımladılar ve Microsoft'un kendi ürünlerinin çoğu tescilli ve kapalı kaynak.





Microsoft'un mülkiyeti, GitHub'ın etik açıdan şüpheli bazı teknolojileri keşfettiğini de gördü; özellikle programcıların kod oluşturmasına yardımcı olan bir yapay zeka aracı olan GitHub Copilot ile. Kopilot, kodlayıcılar tarafından kullanılan Creative Commons lisanslarının şartlarını olası bir şekilde ihlal edecek şekilde GitHub'dan alınan veriler üzerinde eğitildi.





Geliştiriciler, GitHub'ı kullanarak yeniliğin bastırılabileceği, baltalanabileceği ve anlamsız müdahalelere maruz kalabileceği başka bir tıkanıklık noktası yaratıyor.

hızlı serinizi nasıl geri alırsınız

Gitea, Raspberry Pi'de Kendi Git Sunucunuzu Kurmanıza İzin Veriyor

Gitea, bir Gogs çatalıdır ve Go'da yazılmış ve MIT lisansı altında yayınlanan, topluluk tarafından yönetilen hafif kod barındırma çözümüdür. Selefinden daha açık ve daha hızlı bir geliştirme modeline sahip olmayı hedefliyor ve Raspberry Pi gibi mütevazı kaynaklara sahip makinelerde bile çalışacak. Nokta dosyalarınız üzerinde çalışabileceksiniz, özel Ubuntu ISO'ları , Bash betikleri ve Java ve Python yardımcı programları, bir DMCA yayından kaldırmaya tabi olacaklarından, hain yazılımları eğitmek için kullanılmalarından veya başka bir şekilde kontrolünüzden çıkmalarından korkmadan.



Raspberry Pi'nize Gitea Nasıl Kurulur?

Gitea birkaç yükleme yöntemiyle birlikte gelir, ancak en kolayı Docker'dır. Bunlar zaten Raspberry Pi'nizde çalışmıyorsa, Docker ve Docker Compose'u kurun şimdi.

Gitea sunucunuzda depoladığınız dosyalar potansiyel olarak çok fazla yer kaplayacaktır, bu nedenle öneririz Raspberry Pi'nizle harici depolama kullanma ve bunu Gitea kurulumunuz için konum olarak kullanmak.





Pi'nize SSH ile bağlanın , ardından Gitea'yı yüklemek istediğiniz konuma gidin ve yeni bir dizin oluşturun, ardından bu dizine taşıyın:

 mkdir gitea 
cd gitea

nano ile yeni bir dosya oluşturun:





 nano docker-compose.yml

... ve içine aşağıdaki kodu yapıştırın:

 version: "3" 

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:latest
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=mysql
      - GITEA__database__HOST=db:3306
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - /etc/timezone:/etc/timezone:gb
      - /etc/localtime:/etc/localtime:gb
    ports:
      - "3000:3000"
      - "222:22"
    depends_on:
      - db

  db:
    image: mysql:8
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks:
      - gitea
    volumes:
      - ./mysql:/var/lib/mysql

Saat dilimlerini kendi yerel ayarınıza göre değiştirin ve veritabanınız için güçlü bir parola seçin, ardından nano ile kaydedip çıkın. Ctrl + O , sonra Ctrl + X

Girmek:

 docker-compose up -d 

…docker-compose'u ayrılmış modda getirmek için. Docker-compose, Gitea ve Maria DB için birden çok görüntü çekecek ve kapsayıcılar kuracak. Bağlantı hızınıza bağlı olarak bu işlem biraz zaman alabilir.

  docker-compose ps, gitea ve gitea_db_1'i yukarı olarak gösteriyor

Komut istemine geri döndüğünüzde:

 docker-compose ps

…'gitea' ve 'gitea_db_1' öğelerini 'yukarı' olarak göstermelidir. Artık Gitea siteniz için ilk yapılandırma sayfasını şu adresten ziyaret edebilirsiniz: your.pi.local.ip.address:3000 .

Henüz hiçbir şeyi değiştirmeyin. Gitea bulut sunucunuza internet üzerinden erişmeyi planlıyorsanız, önce biraz daha hazırlık yapmanız gerekir.

Gitea Bulut Sunucunuza İnternet Üzerinden Erişin

Gitea bulut sunucunuza erişebilmek için standart bir URL yazabilmek istiyorsunuz, bu nedenle proxy'yi işlemek için Apache'ye ihtiyacınız olacak. Apache'yi şununla yükleyin:

 sudo apt install apache2

Şimdi, aşağıdaki komutlarla Apache'yi başlatın ve etkinleştirin:

 sudo systemctl start apache2 
sudo systemctl enable apache2

Apache'nin proxy modüllerini şununla etkinleştirin:

 sudo a2enmod proxy 
sudo a2enmod proxy_http

Bir alan adı veya alt alan adı seçin saygın bir kayıt memurundan. Ardından, kayıt operatörünüzün ayarlar sayfasından 'Gelişmiş DNS' seçeneklerini bulun ve yeni bir DNS ekleyin. A kayıt. Yı kur Ev sahibi alan ' @' ve değer alanını statik IP adresinize. TTL (Kiralama Süresi) değerini mümkün olduğu kadar düşük ayarlayın ve ardından kaydedin.

Yönlendirici yönetici sayfanızı açın ve şu başlıklardan birini bulun: Port Yönlendirme , Bağlantı Noktası Eşleme , veya Liman Yönetimi.

HTTP istekleri için yeni bir giriş oluşturun. Hem yerel hem de genel bağlantı noktasını şu şekilde ayarlayın: 80 ve yerel IP adresinden Raspberry Pi'nizin IP adresine.

HTTPS istekleri için ikinci bir açık bağlantı noktası gerekir. Hem yerel hem de genel bağlantı noktasını şu şekilde ayarlayın: 443 ve yine yerel IP adresinden Pi'nizin IP adresine.

Son olarak, Git sunucunuza yönelik SSH istekleri için açık bir bağlantı noktasına ihtiyacınız var. Hem yerel hem de genel bağlantı noktasını şu şekilde ayarlayın: 222 ve yerel IP adresinden Pi'nizin IP adresine.

Güvenlik sertifikaları ve anahtarları almak için Certbot kullanacaksınız. Certbot deposunu ekleyin, güncelleyin ve ardından Certbot'u kurun:

 sudo add-apt-repository ppa:certbot/certbot 
sudo apt update
sudo apt-get install python3-certbot-apache

Dizinleri değiştirin ve nano ile yeni bir dosya oluşturun:

 cd /etc/apache2/sites-available/ 
nano gitea.conf

Yeni dosyaya aşağıdakini yapıştırın ve kendi alan adınıza kopyaladığınızdan emin olun:

 <VirtualHost *:80>ServerName your-domain-name.tldProxyPass / http://127.0.0.1:3000/ProxyPassReverse / http:/127.0.0.1:3000/ProxyPreserveHost On</VirtualHost>

Kaydet ve nano ile çık Ctrl + Ö , sonra Ctrl + X , ve yeni conf dosyanızı şununla etkinleştirin:

 sudo a2ensite gitea.conf

Apache'yi yeniden başlatın:

 sudo service apache2 restart

Certbot'u şununla çalıştırın:

 sudo certbot

… ve bir listeden alan adınızı seçin. Certbot, sertifikaları ve anahtarları alıp yükleyecektir. Bilgi istemine geri döndüğünüzde, Apache'yi yeniden başlatın:

 sudo service apache2 restart

Gitea Bulut Sunucusu Kurulumu

Artık Gitea örneğinizi şu adreste bir tarayıcıda ziyaret edebilirsiniz: https://your-domain-name.tld . İlk bölümde veritabanı tipini, şifreyi ve diğer değişkenleri ayarlayabileceksiniz. Bunlar, docker-compose dosyanızda belirttiğiniz değerler olacaktır ve zaten doldurulmaları gerekir, bu nedenle bunları değiştirmeye gerek yoktur.

İçinde Genel Ayarlar , yı kur Site Başlığı uygun birine, Sunucu Etki Alanı alan adınız olmalı ve SSH Sunucu Bağlantı Noktası olarak ayarlanmalıdır 222 . Temel URL, 'HTTPS://' dahil olmak üzere alan adınız olmalıdır.

İşiniz bittiğinde, büyük maviye basın Gitea'yı yükleyin buton. Büyük, yeşil bir fincan çay ve örneğe verdiğiniz ad ve sülükle karşılanacaksınız. İlk kullanıcınızı oluşturmak için sayfanın sağ üst kısmındaki kayıt ol seçeneğine tıklayın ve ardından bilgilerinizi girin. Tebrikler!

Başka birinin Git sunucunuza kaydolmasını ve kendi depolarını barındırmasını durdurmak için, düzenlemeniz gerekir. app.ini dosya. Eğer başlangıçta kılavuz dizindeki / (kök) dizini, şunu girin:

 nano /gitea/gitea/gitea/conf/app.ini

Servis bölümüne ilerleyin ve ayarlayın DISABLE_REGISTRATION doğru.

  gitea devre dışı bırakma kaydı true olarak ayarlandı

Kaydet ve nano ile çık Ctrl + Ö , sonra Ctrl + X, ardından kaplarınızı yeniden başlatın:

 docker-compose downdocker-compose up -d

Gitea'yı Kullanma

GitHub'ı daha önce kullandıysanız, Gitea'da anında evinizde olacaksınız. Giriş yaptıktan sonra, uygun depo olmadığını göreceksiniz. üzerine tıklayarak bir tane oluşturun + sayfanın sağına doğru imzalayın ve ona mantıklı bir ad verin.

  gitea ilk depo oluşturma

Kutuyu işaretleyerek depoyu özel yapmayı seçebilir veya dünyanın görmesi için açık bırakabilirsiniz. Bir benioku dosyasıyla başlatmak için kutuyu işaretleyin, ardından tıklayın Depo Oluştur ilk deponuzu oluşturmak için! Sanki GitHub'daymış gibi değişiklikler yapabilir ve kabul edebilir, dosya yükleyebilir ve düzenleyebilirsiniz.

Tıklamak SSH adresi kopyalamak için ve depoları yerel makinenize klonlayamazsınız, bunun yerine bir hata alırsınız: 'Lütfen doğru erişim haklarına sahip olduğunuzdan ve deponun var olduğundan emin olun'. Önce yerel makinenizin SSH anahtarını Gitea'ya eklemeniz gerekir. Bunu yapmak için çıktıyı şuradan kopyalayın:

 cat ~/.ssh/id_rsa.pub

Gitea web arayüzünüzde profil resminize tıklayın ve ardından ayarlar > SSH/GPG tuşları . Tıklamak Anahtar Ekle , ve az önce kopyaladığınız anahtarı yapıştırın.

  gitea'ya ssh anahtarı ekleyin

Artık kendi Raspberry Pi'nizde kendi Git sunucunuzdaki kendi Git deponuzla etkileşim kurabilirsiniz!

Muhteşem Yazılım Projeleri Oluşturmak için Gitea Bulut Sunucunuzu Kullanın

Git, harika projeler üzerinde işbirliği yapmak için harika bir araçtır, ancak bir ekip olmadan bile kendi iş akışınızı düzenlemek ve harika yazılımlar veya yapılandırmalar oluşturmak için harikadır. Yeni bir programlama dili öğrenirken dosyalarınızı takip etmenize yardımcı olması için kullanın veya masaüstü sisteminizi olabilecek en iyi şekilde özelleştirin.