CI/CD Sederhana
- Dapatkan link
- X
- Aplikasi Lainnya
๐ Bab 15 – SOP CI/CD Sederhana dengan Git di Ubuntu Server
CI/CD Sederhana dengan Git di Ubuntu Server. Bab ini akan membuat dokumentasi kamu semakin praktis, karena dengan Continuous Integration/Continuous Deployment (CI/CD), website atau aplikasi bisa otomatis ter-deploy setiap kali ada perubahan di repository Git.
๐ฏ Tujuan
- Menghubungkan repository Git dengan server.
- Mengatur workflow sederhana agar setiap update di Git otomatis ter-deploy.
- Memastikan proses deployment lebih cepat, konsisten, dan minim error.
๐ง Lingkup
- Sistem operasi: Ubuntu Server
- Tools: Git, SSH, bash script
- Repository: GitHub/GitLab/Bitbucket
- Target: folder web server (/var/www/html atau project folder)
3. Langkah Kerja
๐ฆ 3.1 Instalasi Git di Server
sudo apt update
sudo apt install git -y
git --version
๐ฅ 3.2 Clone Repository ke Server
- Masuk ke folder web:
cd /var/www/html - Clone repository:
sudo git clone https://github.com/username/project.git - Atur permission:
sudo chown -R $USER:$USER project
๐ 3.3 Konfigurasi SSH Key (Opsional, untuk akses private repo)
- Buat SSH key di server:
ssh-keygen -t rsa -b 4096 - Copy public key:
cat ~/.ssh/id_rsa.pub - Tambahkan ke GitHub/GitLab → Settings → SSH Keys.
๐ 3.4 Workflow Deployment Manual
Masuk ke folder project:
cd /var/www/html/project
git pull origin main
→ Update otomatis dari branch main.
⚙️ 3.5 Automasi Deployment dengan Hook Git
- Masuk ke folder repo di server:
cd /var/www/html/project/.git/hooks - Buat file post-merge:
nano post-merge - Isi script:
#!/bin/bash cd /var/www/html/project git pull origin main sudo systemctl restart apache2 - Simpan, beri izin eksekusi:
chmod +x post-merge
→ Setiap kali ada merge/pull, website otomatis update dan service restart.
⏰ 3.6 Automasi Deployment dengan Cron (Alternatif)
Jika tidak pakai hook, bisa pakai cron:
crontab -e
Tambahkan:
*/10 * * * * cd /var/www/html/project && git pull origin main && sudo systemctl restart apache2
→ Update setiap 10 menit.
4. Command Ringkas
| Fungsi | Command |
|---|---|
| Install Git | sudo apt install git -y |
| Clone repo | git clone https://github.com/username/project.git |
| Pull update | git pull origin main |
| Buat SSH key | ssh-keygen -t rsa -b 4096 |
| Hook post-merge | Buat file .git/hooks/post-merge |
| Cron auto update | crontab -e |
5. Catatan Penting
-
✅
Gunakan branch main atau master untuk deployment stabil.
-
๐
Pastikan permission folder web benar agar Git bisa menulis file.
-
๐
Gunakan SSH key untuk repo private agar lebih aman.
-
๐งช
Uji dulu script hook/cron sebelum dipakai di production.
๐ Dengan bab ini, kamu sudah bisa membuat CI/CD sederhana dengan Git sehingga deployment lebih cepat dan otomatis.
- Dapatkan link
- X
- Aplikasi Lainnya
Komentar
Posting Komentar