Nexus OSS servisinin önüne nginx vekil servisi ekleme

Ali Orhun Akkirman - Dec 20 '23 - - Dev Community

Ubuntu 22.04 üzerinde Nexus OSS kurulumu için aşağıdaki başlıkta kurulum görülebilmektedir.

https://dev.to/aciklab/ubuntu-2204-nexus-oss-kurulumu-6gk

Bu adımdan sonra nexus servisinin kendisini dışarıya açmak verimli olmayabilir. Bu nedenle önüne nginx koymak daha sağlıklı olacaktır.

Nexus servisini yerele açma

Nexus servisini sadece yerel makinede çalışacak hale getirmek için /opt/sonatype-work/nexus3/etc/nexus.properties dosyası açılır ve içerisine aşağıdaki satır eklenir:

application-host=127.0.0.1
Enter fullscreen mode Exit fullscreen mode

Varsayılanda yoruma alınmış "0.0.0.0" ifadesi olduğu için uzak cihazdan da erişim sağlanmakta idi.

Bu adımdan sonra nexus servisi aşağıdaki gibi yeniden başlatıldığında dışarıya kapatılmış olunur.

sudo systemctl restart nexus
Enter fullscreen mode Exit fullscreen mode

Ters vekil sunucusu olarak kullanma

Bu adımdan sonra içeride hizmet veren nexus servisini dışarıya nginx servisi ile açabilmek için nginx paketini yüklemeniz gerekiyor.

sudo apt install nginx
Enter fullscreen mode Exit fullscreen mode

Site dosyası olarak /etc/nginx/sites-available/nexus dosyası içerisine aşağıdaki gibi bir içerek eklemek gerekecektir.

upstream nexus3 {
  server 127.0.0.1:8081;
}

server {
    listen 80;

    location / {
        proxy_pass http://nexus3/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;

        proxy_redirect off;
    }
}
Enter fullscreen mode Exit fullscreen mode

Bu sayede içeride 8081 portundan yayın yapan nexus servisi önüne 80 portu üzerinden nginx yönlendirmesi eklenmiş olacaktır. Site ayarını aktife çekmek ve servisi yeniden başlatarak süreci bitirebiliriz.

sudo ln -s /etc/nginx/sites-available/nexus /etc/nginx/sites-enabled/
sudo systemctl restart nginx
sudo systemctl enable nginx
Enter fullscreen mode Exit fullscreen mode

Bu adımla birlikte 80 portu üzerinden uzaktan erişim sağlanmış olacaktır.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .