Polr ile URL Shortener Altyapısı Oluşturma

tarihinde yayınlandı.

Merhaba, bu yazıda open source bir tool olan Polr ile, kendi URL shortener altyapımızı oluşturacağız.

Gereksinimler:

  • Linux Server (Ubuntu, CentOS vs.)
  • Docker
  • Docker Compose
  • Git
  • NGINX
  • Yönetimi sizde olan bir adet domain.

İlk olarak ilgili repoyu makineye clone’luyoruz ve docker-polr dizinine geçiyoruz.

Dizin içinde yer alan .env.example dosyasının bir kopyasını .env adıyla oluşturuyoruz.

Dosya içerisinde edit yapacağımız yerler Admin ve Configs kısımları. Admin kısmında UI tarafı için login bilgilerini, configs kısmında ise hangi domain ile short işlemi gerçekleştireceğimizi belirtiyoruz. Ben nurig.link domaini ile işlem gerçekleştireceğim. Admin kısmını kendinize göre doldurabilirsiniz.

Dizin içerisindeki docker-compose.yml tarafında da, isterseniz uygulama portlarını, container name’leri vs. değiştirebilirsiniz. (Uygulamanın default portu 8080 olarak set edilmiştir.)

Daha sonrasında aşağıdaki komut ile uygulamamızı ayağa kaldırıyoruz.

Komut sonrası çıktı aşağıdaki gibi olmalıdır.

Sırada, uygulamamızı host etmek için gerekli olan NGINX kurulumu var. Aşağıdaki komut ile kurulumu gerçekleştiriyoruz.

Kurulum işleminden sonra nurig.link‘in NGINX config’ini ayarlıyoruz.

Daha sonra aşağıdaki komut ile NGINX‘i reload ediyoruz.

Makine üzerindeki tüm kurulumlarımızı tamamladık. Sırada, domain adresimize ait A kaydı oluşturmak kaldı. Kurulum yaptığımız sunucunun IP’si ile A kaydını oluşturuyoruz. A kayıtları, anormal bir durum olmadıkça 3-5dk içerisinde global DNS sunucularında güncellenir.

Bu kısımdaki adımlar domaini satın aldığınız firmaya göre değişiklik gösterebilir. Ben domain adresimi Cloudflare üzerinde barındırıyorum. DNS, SSL, HTTPS redirect işlemlerinde yönetim kolaylığı oldukça fazla.

Son olarak browser’a domain adresinizi girerek URL shortener uygulamanızı kullanmaya başlayabilirsiniz. Polr’un, API desteği sunduğunu da hatırlatalım.

Örnek URL: https://nurig.link/blog

nurig.link demo olarak açık kalmaya devam edecek. Dilerseniz sizlerde kullanabilirsiniz 🙂

Bir sonraki yazıda görüşmek üzere.

 

Sosyal Medyada Paylaşın