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.
Mengapa Host Layanan Git Anda Sendiri di Raspberry Pi Daripada Menggunakan GitHub?
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:
nanokomposisi buruh pelabuhan.yml
... dan rekatkan kode berikut ke dalamnya:
Versi: kapan: "3"jaringan:
gite:
eksternal: salah
jasa:
pelayan:
gambar: gitea/gitea: terbaru
container_name: gitea
lingkungan:
- 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
memulai kembali: selalu
jaringan:
-gitea
volume:
- ./gitea:/data
- /etc/timezone:/etc/timezone: gb
- /etc/localtime:/etc/localtime: gb
port:
- "3000:3000"
- "222:22"
tergantung pada:
- db
db:
gambar: mysql: 8
memulai kembali: selalu
lingkungan:
- MYSQL_ROOT_PASSWORD=gita
- MYSQL_USER = gitea
- MYSQL_PASSWORD=gita
- MYSQL_DATABASE=gita
jaringan:
-gitea
volume:
- ./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:
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.
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 tepat Install apache2
Sekarang, mulai dan aktifkan Apache dengan perintah berikut:
sudo systemctl awal apache2
sudo systemctl memungkinkan apache2
Aktifkan modul proxy Apache dengan:
proksi sudo a2enmod
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 A 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 tepat memperbarui
sudo apt-mendapatkan instal python3-certbot-apache
Ubah direktori, dan buat file baru dengan nano:
CD /etc/apache2/sites-available/
nanogitea.conf
Di file baru, rekatkan yang berikut, pastikan untuk menyalin nama domain Anda sendiri:
<VirtualHost *:80>ServerName nama-domain-Anda.tldProxyPass / http://127.0.0.1:3000/ProxyPassReverse / http://127.0.0.1:3000/ProxyPreserveHost Aktif</VirtualHost>
Simpan dan keluar dari nano dengan Ctrl + HAI, Kemudian Ctrl + X, dan aktifkan file conf baru Anda dengan:
sudoa2ensitegitea.conf
Mulai ulang Apache:
layanan sudo restart apache2
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:
layanan sudo restart apache2
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 dalam 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 gitea direktori di / (root) direktori, masukkan:
nano /gitea/gitea/gitea/conf/app.ini
Gulir ke bawah ke bagian layanan dan atur DISABLE_REGISTRATION untuk benar.
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.
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:
kucing ~/.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.
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.