sudo apt-get update
sudo apt install openjdk-11-jdk
java --version
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian-stable binary/ | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt update
sudo apt install Jenkins
sudo usermod -a -G root jenkins
sudo systemctl start Jenkins
sudo systemctl status jenkins
sudo ufw allow 8080
sudo ufw allow 20
sudo ufw enable
sudo ufw status
Access browser http://localhost:8080
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
copy password dan pastekan ke isian yang muncul di web
pilih nstall suggested plugins
Config Domain dan SSL Nginx untuk jenkins
nano /etc/nginx/sites-available/jenkins
server {
listen 80;
listen [::]:80;
return 301 https://$host$request_uri;
}
#Block HTTPS
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name jen-integration-app.sociomile.net;
#ssl on;
ssl_certificate /etc/ssl/certs/cert.pem; #cert dari sociomile.net (cloudflare)
ssl_certificate_key /etc/ssl/private/cert.key; #cert dari sociomile.net (cloudflare)
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Fix the “It appears that your reverse proxy set up is broken" error.
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
proxy_redirect http://localhost:8080 https://jen-integration-app.sociomile.net;
}
}
sudo nano /etc/default/jenkins
Setelah itu, cari JENKINS\_ARGSbaris tersebut dan perbarui agar terlihat seperti ini:
JENKINS_ARGS="--webroot=/var/cache/jenkins/war --httpListenAddress=127.0.0.1 --httpPort=$HTTP_PORT -ajp13Port=$AJP_PORT"
Perhatikan bahwa pengaturan –httpListenAddress=127.0.0.1 perlu ditambahkan atau diedit.
Setelah itu, lanjutkan dan restart Jenkins dan Nginx.
sudo service jenkins restart
sudo service nginx restart
Sekarang Anda seharusnya dapat mengunjungi domain Anda menggunakan HTTP atau HTTPS, dan situs Jenkins akan disajikan dengan aman.
Opsional) Memperbarui URL OAuth
Jika Anda menggunakan GitHub atau plugin OAuth lain untuk autentikasi, plugin tersebut mungkin rusak saat ini. Misalnya, saat mencoba mengunjungi URL tersebut, Anda akan mendapatkan pesan "Gagal membuka halaman" dengan URL yang mirip dengan berikut:
http://jenkins.domain.com:8080/securityRealm/finishLogin?code=random-string
Untuk memperbaiki masalah ini, Anda perlu memperbarui beberapa pengaturan, termasuk pengaturan plugin OAuth Anda. Pertama, Anda perlu memperbarui URL Jenkins (di Jenkins GUI), Anda dapat menemukannya dengan menavigasi dengan cara berikut:
Jenkins -> Kelola Jenkins -> Konfigurasi Sistem -> Lokasi Jenkins
Setelah itu, perbarui URL Jenkins untuk menggunakan HTTPS -https://jenkins.domain.com/
Sebagai langkah berikutnya, perbarui setelan OAuth Anda dengan penyedia eksternal. Contoh ini untuk GitHub. Di GitHub, Anda dapat menemukannya di Pengaturan -> Aplikasi -> Aplikasi pengembang , di situs GitHub.
Harus ada entri untuk Jenkins. Perbarui URL Beranda dan URL panggilan balik Otorisasi untuk mencerminkan pengaturan HTTPS. Anda akan melihat sesuatu seperti ini.
0 Comments