Coolify Nasıl Kurulur –  Bir PaaS/Heroku Alternatifi

Coolify, sunucular yönetme zahmeti olmadan uygulamalarınız, veritabanlarınız ve hizmetleriniz (WordPress, Plausible Analytics, Ghost gibi) için kendi kendine barındırma sürecini basitleştirmek için tasarlanmış ücretsiz ve açık kaynaklı bir platformdur.

Heroku, Netlify ve Vercel gibi platformlara bir alternatiftir, ancak kendi kendine barındırılma esnekliğine sahiptir ve verileriniz ve altyapınız üzerinde kontrol sahibi olmanıza olanak tanır.

Bu kılavuzda, Coolify’ı sunucunuza nasıl kuracağınızı ve geliştiricilere ve ekiplere sağladığı faydaları inceleyeceğiz. Ayrıca VPS, özel sunucular ve hatta bir Raspberry Pi ile evde kendi kendine barındırma dahil olmak üzere farklı barındırma seçeneklerini de ele alacağız.

Her şeyden önce, yine de:

PaaS nedir?

Coolify bir PaaS’dir (Hizmet Olarak Platform), yani temel sunucu yönetimini soyutlayarak uygulamaların dağıtımını ve yönetimini basitleştirir.

Bu, altyapıyı, veritabanlarını veya SSL sertifikalarını manuel olarak yapılandırmanıza gerek kalmadan uygulamalarınızı oluşturmaya ve çalıştırmaya odaklanmanıza olanak tanır.

Coolify ile bir bulut hizmetinin esnekliğini elde edersiniz, ancak kendi altyapınızda barındırılırsınız.

Başlıca avantajları:

  • Kullanım kolaylığı: Coolify, uygulamaları çeşitli ortamlarda dağıtmayı ve yönetmeyi basitleştirir.
  • Maliyet tasarrufu: Kendi sunucularınızı kullandığınız için bulut platformlarıyla ilişkili yüksek ücretlerden kaçınırsınız.
  • Tam kontrol: Kendi kendine barındırma, altyapınızı, verilerinizi ve ayarlarınızı kontrol ettiğiniz anlamına gelir.

Neden Coolify’ı kullanmalısınız?

Docker kapsayıcılarını, veritabanlarını veya yedeklemelerini daha önce manuel olarak yönettiyseniz, bunun ne kadar zaman alıcı olabileceğini bilirsiniz. Coolify, bunların çoğunu otomatikleştirerek uygulamaları, hizmetleri ve veritabanlarını bir web arayüzü aracılığıyla dağıtmanıza olanak tanır.

İşte bu yüzden öne çıkıyor:

  • Çoklu dil desteği: Coolify, çok çeşitli programlama dilleri ve çerçeveleriyle uyumludur ve statik web siteleri, API’ler, arka uçlar, veritabanları ve hizmetler dağıtmanıza olanak tanır.
  • Her yerde dağıtın: Pahalı bulut ekosistemlerine kilitlenmeden herhangi bir sunucuya dağıtabilirsiniz.
  • Otomatik SSL: Let’s Encrypt’in ücretsiz SSL sertifikaları, özel alan adlarınız için otomatik olarak kurulur ve yenilenir.
  • Otomatik yedeklemeler: Coolify, veritabanlarınızı otomatik olarak S3 uyumlu depolamaya yedekler, böylece kolaylıkla geri yükleyebilirsiniz.
  • İşbirliği araçları: Coolify, verimli ekip çalışması için rol tabanlı erişim ve çekme isteği dağıtımlarıyla ekip işbirliğini destekler.

 

Coolify’ı yükleme

Terminalinizde şu komutları yazın:

ssh root@<server_ip_address>

Bir sonraki istem, IP’yi bilinen ana bilgisayarlar listenize eklemenizi isteyecektir.

Buraya “evet” yazın.

Artık sunucunuza uzaktan erişiminiz olmalı ve komutları yürütmelisiniz.

Welcome to Ubuntu 22.04.3 LTS (GNU/Linux 5.15.0-91-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  System information as of Sun Mar  3 03:54:34 AM UTC 2024

  System load:  0.0               Processes:             100
  Usage of /:   5.1% of 37.23GB   Users logged in:       0
  Memory usage: 5%                IPv4 address for eth0: 162.55.37.168
  Swap usage:   0%                IPv6 address for eth0: 2a01:4f8:c012:7c82::1


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status


The list of available updates is more than a week old.
To check for new updates run: sudo apt update

root@ubuntu-4gb-fsn1-1:~#

Coolify.io docs’a gidip kurulum için arama yaparsanız, aşağıdakine benzeyen kurulum komut dosyasını görmelisiniz:

curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash

Komutu girin ve kurulum komut dosyasının işini yapmasına izin verin. Bu tamamlandıktan sonra, sunucunuzdaki Coolify örneğine erişebileceğiniz bir IP adresine sahip bir çıktı göreceksiniz,
benim durumumda http://162.55.37.168:8000 oldu.

Coolify installing in the terminal gif

IP adresini bağlantı noktasıyla birlikte kopyalayın ve tarayıcınızın URL’sine girin. Coolify için kayıt ekranına yönlendirileceksiniz.

Coolify Başlangıç Deneyimi

Coolify kurulumundan IP adresini takip ettiğinizde bir kayıt sayfasına yönlendirileceksiniz.

Alan adınızda barındıracağımız Coolify örneğine giriş yapmak için kaydolun.Güçlü ve benzersiz bir parola kullandığınızdan emin olun, çünkü özel alan adınızda Coolify ile bu şekilde arayüz oluşturacaksınız.

Coolify onboarding registration form

Bir dizi işe alım sorusu ile karşılaşacaksınız. “Sunucu” sayfasını görene kadar ileri’ye tıklamaya devam edin.

Welcome to the Coolify page

Coolify’ın bu örneğinin kurulu olduğu yer olduğu için “localhost”u seçeceksiniz.

Coolify onboarding - server-type options

Ardından ilk projenizi oluşturacaksınız. Bu projeler, kaynaklarınızı tek bir çatı altında düzenlemenin bir yoludur. Burada ilk projenizi ekleyeceksiniz, bu yüzden “Yeni bir tane oluşturalım” seçeneğine tıklayın. Bu, sizin için “İlk projem” adlı bir proje oluşturacaktır.

Coolify onboarding - project selection

Bundan sonra, bir sonraki sayfa kaynak ekleme hakkında bir şeyler söylüyor. Kaynaklar, uygulamanızın veya web sitenizin ihtiyaç duyduğu veritabanları, sunucular vb. gibi şeylerdir. “Hadi yapalım!” düğmesine tıklayın.

Statik bir site dağıtıyorsanız, büyük olasılıkla dağıtacak yalnızca bir kaynağınız vardır. “Genel Depo” kaynağını seçin.

Coolify - create a resource page

Bunu tıkladığınızda, hangi sunucuyu kullanmak istediğiniz sorulacaktır. Sadece bir tane olmalı ve bu daha önce “localhost” olmalı.

Coolify resource select server option

Ardından sizden bir Hedef seçmenizi isteyecektir. “localhost-coolify” adlı Bağımsız bir Docker örneği olması gereken tek seçeneği seçmeniz yeterlidir.

Coolify resource select destination option

Ve son olarak, sizden genel deponun URL’sini isteyecektir. Genel deponuzun URL’sini alana yapıştırın.

Meta verileri Git deposundan alır ve gerekli tüm ayrıntıları doldurmalıdır.

Burada önemli olan kısım build çıktısının olacağı Publish Directory’dir.

Ayrıca, sizin için geçerliyse “Statik bir site mi” geçişini değiştirin.

Coolify - creating a new application page

Artık yeni oluşturduğunuz kaynak için bir yapılandırma sayfası görmeniz gerekir.

Bu ekranda çok şey var, ancak Coolify’ın uygulamamızı oluşturup oluşturamayacağını görmek için yalnızca dağıtıma odaklanacağız.

Sağ üst köşede, “Dağıt” ı tıklayınCoolify's application configuration page

Dağıtım sayfasına yönlendirilirsiniz ve derleme günlükleriniz görünmeye başlar.

Umarım herhangi bir hata olmaz ve son günlük girişi olarak “Yeni konteyner başlatıldı” ifadesini görürsünüz ve dağıtımınız “Bitti” diyor.Coolify's deployment page

Coolify’ın web sitesine hizmet verip veremeyeceğini test etmek için “Uygulamayı Aç” düğmesine tıklayın ve sitenizi görüntülemek için otomatik olarak oluşturulan bağlantıyı seçin.

opening deployment application on Coolify

Sitenizin Coolify tarafından sunulduğunu görmelisiniz.

my website live on URL that Coolify provided

Coolify sayfanızı bir sonraki bölüm için açık tutun çünkü daha sonra onunla uğraşmamız gerekiyor.

Cloudflare’den Coolify’a proxy etki alanı

Şimdi tek yapmamız gereken Cloudflare ve Coolify arasında bir yapılandırma yapmak. Cloudflare’daki etki alanımızı Hetzner sunucumuza yönlendirmemiz gerekiyor ve Coolify uygulamalarımıza hizmet edecek.

Bunu anlamam uzun zaman aldı, bu yüzden sizin açınızdan biraz deneme yanılma olabilir, ancak umarım bir sonraki talimat seti sizin için işe yarar.

Katı SSL/TSL Modunu Zorunlu Kıl

Bir sonraki kısım önemli! Cloudflare’daki SSL/TLS sayfasına gidin.

navigation menu showing how to get to Cloudflare's SSL overview

Coolify’ın bizim için HTTPS sunmasına izin vermek için SSL Tam (katı) modunu açmak istiyoruz.

Varsayılan olarak, SSL Esnek modda olacaktır ve bunu açtıysanız, hem Coolify hem de Cloudflare bir yönlendirme döngüsünde takılıp kalacak ve sayfanın “Çok fazla yönlendirme” hatası vermesine neden olacaktır.selecting the Full Strict option in Cloudflare SSL/TLS page

Coolify’a alanadı ile erişin

Cloudflare kontrol panelinizde, alan adınız için DNS Kayıtları Yönetimi sayfasına gidin. Coolify örneğimiz için bir alt alan adı eklemek istiyoruz.

navigation menu showing how to get to Cloudflare's DNS records management

Ana bilgisayar adı “coolify**” olan yeni bir “A” kaydı ekleyin ve değer uzak sunucunuzun IP adresidir ve kaydet’e tıklayın.

creating Coolify instance DNS record

Coolify’a geri dönün ve Ayarlar sayfasına gidin.

navigation menu showing how to get to Coolify's settings page

“Instance’s Domain” (Bulut Sunucusunun Etki Alanı) alanına https://coolify.<your_domain> yazın.

Buraya HTTPS eklediğimize dikkat edin. Coolify, bu yapılandırmayı gördüğünde otomatik olarak bir SSL sertifikası oluşturacaktır. Kaydet’e bastığınızdan emin olun.

configuring Coolify's setting to point to the domain

Bakalım artık Coolify örneğimize Hetzner sunucu IP adresi yerine etki alanımızdan erişebilecek miyiz?

https://coolify.<your_domain>’a gidin ve alan adınızda yeni Coolify’ınıza göz atın!

Henüz yüklenmezse, DNS yayılana kadar birkaç dakika bekleyin.

Custom domain website hosting Coolify

Şimdi ilk Coolify kurulumuna kaydolmak için kullandığınız kimlik bilgileriyle giriş yapın ve şimdi Coolify kontrol panelinde olmalısınız.

Coolify kontrol panelinden proje yapılandırma kontrol panelinize geri dönün.

Coolify’ın kendi alanımızı kullanmak için oluşturduğu otomatik olarak oluşturulan etki alanını değiştireceğiz.

Etki alanınızı yazın ve ardından kaydet’i tıklayın. Kaydettikten sonra, “Yeniden Dağıt” ı tıkladığınızdan emin olun, aksi takdirde bu işe yaramaz.configuring custom domain in Coolify's application configuration page

Cloudflare’a geri dönersek, etki alanımızın sunucumuza yönlendirildiğinden emin olmak için daha fazla DNS kaydı oluşturmamız gerekiyor.

Bu yüzden Cloudflare DNS Yönetimine geri dönün ve ana bilgisayar adı “@” olan yeni bir “A” kaydı girin ve değer Hetzner sunucusu IP adresi olmalıdır.entering DNS record for custom domain

Şimdi birkaç dakikanızı ayırın ve alan adınızı ziyaret edin.

Custom domain running off Cloudflare and Coolify

www’yi www olmayana yönlendirme

Uzun öğreticiyi neredeyse bitirdik. Buraya kadar geldiğimde heyecanlandım ve umarım siz de öylesinizdir.

Bu son kısım son bölümdür ve yapacağımız şey www.<alan adını> yalnızca <alan adına> yönlendirmektir.

Tüm bunlar Cloudflare’da olacak, bu yüzden Coolify ile uğraşmamıza gerek yok.

Cloudflare’da, DNS yönetimimize geri döndüğümüzde iki kayıt ekleyeceğiz.

Birincisi, adı “www” olan ve değeri 192.0.2.1 olan bir “A” kaydıdır.

Bu, www alt etki alanını kullanan bir ALIAS kaydı oluşturduğumuzu ve sahte bir IPv4 adresine işaret ettiğimizi söylüyor.

Sahte IPv4 adresi önemsizdir çünkü Cloudflare, IP adresine ulaşmadan önce tüm trafiği yeniden yönlendirecektir.entering DNS record for ipv4

Şimdi IPv6 sürümünü aynı ada sahip başka bir “AAAA” ile oluşturacağız, ancak bu sefer IPv6 adresi 100::

entering DNS record for ipv6

Bu yayılırken, Cloudflare’da gerçek yönlendirme kurallarını ayarlamamız gerekiyor.

Kurallar Yönlendirme sayfasına gidinnavigation menu showing how to get to Cloudflare's redirect rules

Oradayken, bir forma yönlendirileceğiniz “+ Kural oluştur”a tıklayın.

Yönlendirme Kuralınızın adını ekleyin. Benimkine “www to apex” adını verdim.enter the redirect rule name

Ardından, kural ifadesini yazacağınız “İfadeyi düzenle”ye tıklayın. billyle.dev gerçek alan adınızla değiştirin.

arrow showing how to edit expressions

(http.request.full_uri contains "www.billyle.dev")

condition criteria inside edit expressions

Son giriş alanı, Cloudflare’ın yukarıdaki koşulla eşleştiğinde bir şey yaptığı yerdir.

“301” kalıcı yönlendirmesi olan bir “Dinamik” istiyoruz ve ifademiz şöyle olacak:dynamic redirect expression with status code 301

concat("https://","billyle.dev",http.request.uri.path)

Yine, billyle.dev gerçek alan adınızla değiştirin ve “Sorgu dizesini koru” seçeneğinin işaretli olduğundan emin olun.

Şimdi çalışıp çalışmadığını görmek için birkaç dakika sonra test edin. www.<your_domain> adresini ziyaret edin ve sizi kök etki alanına yönlendirip yönlendirmediğine bakın.

Bu kadar! Bitti!

 

 

Yazının orijinalini buradan okuyabilirsiniz.

Hüseyin GÜÇ

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım. Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum. Son 6 yıldır  sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum. Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.