Instal Gitea di Raspberry Pi untuk Membuat Repositori Kode Anda Sendiri

Instal Gitea di Raspberry Pi untuk Membuat Repositori Kode Anda Sendiri
Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya.

Git adalah sistem kontrol versi yang digunakan oleh pengembang perangkat lunak, pembuat kode, dan pengotak-atik untuk berkolaborasi dan mendistribusikan proyek sumber terbuka. Dengan menggunakan Git, Anda dapat menangani proyek dalam berbagai ukuran, menarik perubahan dan penggabungan kode, dan mengizinkan pengguna untuk mengkloning repositori Anda ke mesin mereka sendiri. Ekosistem open source berjalan di Git, dan banyak proyek yang ditampilkan di MakeUseOf.com melibatkan penggunaan sumber daya dari GitHub. Dengan Gitea, Anda dapat menghosting repositori Git Anda sendiri yang berfungsi penuh pada Raspberry Pi di rumah Anda sendiri.





GUNAKAN VIDEO HARI INI

Mengapa Host Layanan Git Anda Sendiri di Raspberry Pi Daripada Menggunakan GitHub?

  Halaman repositori GitHub menampilkan daftar file dari React's source code

Dengan 55 juta pengguna, GitHub adalah gudang perangkat lunak bebas dan sumber terbuka terbesar di Bumi, tetapi pemiliknya saat ini, Microsoft, tidak cocok secara alami untuk peran penjaga. CEO perusahaan sebelumnya menggambarkan Linux dan Lisensi Publik Umum sebagai 'kanker', dan sebagian besar produk Microsoft sendiri adalah hak milik dan sumber tertutup.





Kepemilikan Microsoft juga telah melihat GitHub mengeksplorasi beberapa teknologi yang meragukan secara etis — terutama dengan GitHub Copilot, alat AI untuk membantu pemrogram menghasilkan kode. Copilot dilatih tentang data dari GitHub, kemungkinan pelanggaran ketentuan lisensi Creative Commons yang digunakan oleh pembuat kode.





Dengan menggunakan GitHub, pengembang menciptakan titik hambatan lain di mana inovasi dapat dilumpuhkan, dirusak, dan mengalami gangguan yang tidak penting.

Gitea Memungkinkan Anda Mengatur Server Git Anda Sendiri di Raspberry Pi

Gitea adalah cabang dari Gogs, dan merupakan solusi hosting kode ringan yang dikelola komunitas yang ditulis dalam Go, dan diterbitkan di bawah lisensi MIT. Ini bertujuan untuk memiliki model pengembangan yang lebih terbuka dan lebih cepat dari pendahulunya, dan akan berjalan pada mesin dengan sumber daya yang sederhana sekalipun, seperti Raspberry Pi. Anda akan dapat mengerjakan dotfile Anda, ISO Ubuntu khusus , skrip Bash, dan utilitas Java dan Python tanpa takut bahwa mereka akan tunduk pada penghapusan DMCA, digunakan untuk melatih perangkat lunak jahat, atau berada di luar kendali Anda.



Cara Memasang Gitea di Raspberry Pi Anda

Gitea hadir dengan beberapa metode instalasi, tetapi yang paling mudah adalah melalui Docker. Jika Anda belum menjalankan ini di Raspberry Pi Anda, instal Docker dan Docker Compose sekarang.

File yang Anda simpan di server Gitea Anda berpotensi memakan banyak ruang, jadi saran kami menggunakan penyimpanan eksternal dengan Raspberry Pi Anda , dan menggunakannya sebagai lokasi pemasangan Gitea Anda.





Hubungkan ke Pi Anda melalui SSH , lalu arahkan ke lokasi tempat Anda ingin menginstal Gitea, dan buat direktori baru, lalu pindah ke dalamnya:

 mkdir gitea 
cd gitea

Buat file baru dengan nano:





 nano docker-compose.yml

... dan rekatkan kode berikut ke dalamnya:

 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

Ubah zona waktu ke lokal Anda sendiri dan pilih kata sandi yang kuat untuk basis data Anda, lalu simpan dan keluar dari nano dengan Ctrl + O , kemudian Ctrl + X.

Memasuki:

transfer file dari pc ke wifi android langsung
 docker-compose up -d 

… untuk memunculkan komposisi buruh pelabuhan dalam mode terpisah. Komposisi Docker akan menarik banyak gambar untuk Gitea dan Maria DB dan menyiapkan wadah. Tergantung pada kecepatan koneksi Anda, ini mungkin memakan waktu.

  docker-compose ps menampilkan gitea dan gitea_db_1 sebagai up

Ketika Anda kembali ke prompt perintah:

 docker-compose ps

…harus menampilkan 'gitea' dan 'gitea_db_1' sebagai 'naik'. Anda sekarang dapat mengunjungi halaman konfigurasi awal untuk situs Gitea Anda di alamat.pi.local.ip.anda:3000 .

Jangan mengubah apa pun. Jika Anda berencana untuk mengakses instans Gitea Anda melalui internet, Anda perlu melakukan sedikit persiapan terlebih dahulu.

Akses Instans Gitea Anda Melalui Internet

Anda ingin dapat mengetikkan URL standar agar dapat menjangkau instans Gitea Anda, jadi Anda memerlukan Apache untuk menangani proksi. Instal Apache dengan:

 sudo apt install apache2

Sekarang, mulai dan aktifkan Apache dengan perintah berikut:

 sudo systemctl start apache2 
sudo systemctl enable apache2

Aktifkan modul proxy Apache dengan:

 sudo a2enmod proxy 
sudo a2enmod proxy_http

Pilih nama domain atau nama subdomain dari registrar terkemuka. Kemudian, dari halaman pengaturan registrar Anda, temukan opsi 'Advanced DNS' dan tambahkan yang baru SEBUAH catatan. Mengatur Tuan rumah bidang ke ' @' dan bidang nilai ke alamat IP statis Anda. Tetapkan nilai TTL (Time to Lease) serendah mungkin, lalu simpan.

Buka halaman admin router Anda, dan temukan bagian yang berjudul Penerusan Pelabuhan , Pemetaan Pelabuhan , atau Manajemen Pelabuhan.

Buat entri baru untuk permintaan HTTP. Setel port lokal dan publik ke 80 , dan alamat IP lokal ke alamat IP Raspberry Pi Anda.

Port terbuka kedua diperlukan untuk permintaan HTTPS. Setel port lokal dan publik ke 443 , dan sekali lagi, alamat IP lokal ke alamat IP Pi Anda.

Terakhir, Anda memerlukan port terbuka untuk permintaan SSH ke server Git Anda. Setel port lokal dan publik ke 222 , dan alamat IP lokal ke alamat IP Pi Anda.

Anda akan menggunakan Certbot untuk mendapatkan sertifikat dan kunci keamanan. Tambahkan repositori Certbot, perbarui, lalu instal Certbot:

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

Ubah direktori, dan buat file baru dengan nano:

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

Di file baru, rekatkan yang berikut, pastikan untuk menyalin nama domain Anda sendiri:

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

Simpan dan keluar dari nano dengan Ctrl + HAI , kemudian Ctrl + X , dan aktifkan file conf baru Anda dengan:

 sudo a2ensite gitea.conf

Mulai ulang Apache:

 sudo service apache2 restart

Jalankan Certbot dengan:

 sudo certbot

…dan pilih nama domain Anda dari daftar. Certbot akan mengambil dan memasang sertifikat dan kunci. Saat Anda kembali ke prompt, mulai ulang Apache lagi:

 sudo service apache2 restart

Pengaturan Instans Gitea

Anda sekarang dapat mengunjungi instans Gitea Anda di browser dengan di alamat https://your-domain-name.tld . Anda dapat mengatur jenis database, kata sandi, dan variabel lainnya di bagian pertama. Ini akan menjadi nilai yang Anda tentukan dalam file pembuat docker Anda, dan harus sudah diisi, jadi tidak perlu mengubahnya.

Di Pengaturan Umum , mengatur Judul situs ke yang cocok, Domain Server harus menjadi nama domain Anda dan Pelabuhan Server SSH harus diatur ke 222 . URL dasar harus berupa nama domain Anda termasuk 'HTTPS://'.

Setelah selesai, tekan tombol biru besar Instal Gitea tombol. Anda akan disambut oleh secangkir teh hijau besar, dan nama dan siput apa pun yang Anda berikan pada contoh tersebut. Untuk membuat pengguna pertama Anda, klik daftar di kanan atas halaman, lalu masukkan detail Anda. Selamat!

Untuk menghentikan orang lain mendaftar dan menghosting repositori mereka sendiri di server Git Anda, Anda perlu mengedit file app.ini mengajukan. Jika Anda awalnya membuat memandu direktori di / (root) direktori, masukkan:

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

Gulir ke bawah ke bagian layanan dan atur DISABLE_REGISTRATION untuk benar.

  pendaftaran diable gitea disetel ke true

Simpan dan keluar dari nano dengan Ctrl + HAI , kemudian Ctrl + X, lalu mulai ulang wadah Anda:

 docker-compose downdocker-compose up -d

Menggunakan Gitea

Jika Anda pernah menggunakan GitHub, Anda akan langsung betah di Gitea. Setelah masuk, Anda akan melihat bahwa tidak ada repositori yang tersedia. Buat satu dengan mengklik + tandatangani di sebelah kanan halaman, dan berikan nama yang masuk akal.

  pembuatan repositori awal gitea

Anda dapat memilih untuk menjadikan repositori pribadi dengan mencentang kotak, atau membiarkannya terbuka untuk dilihat dunia. Centang kotak untuk menginisialisasi dengan file readme, lalu klik Buat Repositori untuk membuat repositori pertama Anda! Anda dapat membuat dan melakukan perubahan, mengunggah file, dan mengedit seolah-olah itu adalah GitHub.

Klik SSH untuk menyalin alamat, dan Anda tidak akan dapat mengkloning repositori ke mesin lokal Anda, menerima kesalahan: 'Harap pastikan Anda memiliki hak akses yang benar dan repositori ada'. Anda perlu menambahkan kunci SSH mesin lokal Anda ke Gitea terlebih dahulu. Untuk melakukan ini, salin output dari:

 cat ~/.ssh/id_rsa.pub

Di antarmuka web Gitea Anda, klik foto profil Anda, lalu pilih pengaturan > Kunci SSH/ GPG . Klik Tambahkan Kunci , dan rekatkan kunci yang baru saja Anda salin.

  tambahkan kunci ssh ke gitea

Anda sekarang dapat berinteraksi dengan repositori Git Anda sendiri di server Git Anda sendiri di Raspberry Pi Anda sendiri!

Gunakan Instans Gitea Anda untuk Membuat Proyek Perangkat Lunak yang Luar Biasa

Git adalah alat yang luar biasa untuk berkolaborasi dalam proyek yang luar biasa, tetapi bahkan tanpa tim, Git sangat bagus untuk mengatur alur kerja Anda sendiri dan membuat perangkat lunak atau konfigurasi yang luar biasa. Gunakan itu untuk membantu melacak file Anda saat Anda mempelajari bahasa pemrograman baru atau menyesuaikan sistem desktop Anda untuk menjadi yang terbaik.