Bloğa geri dön

Ubuntu 21.04 Server üzerinde Django ile PostgreSQL Kullanımı

Ubuntu 21.04 Server üzerinde Django ile PostgreSQL Kullanımı

Django sağlam, ölçeklenebilir, güvenli ve yüksek performanslı web uygulamaları oluşturma sürecini kolaylaştıran, tanınmış bir web çerçevesidir. Açık kaynaklı bir proje olup, Python dilinde yazılmıştır. Django hakkında daha detaylı bilgiye buradan ulaşabilirsiniz.

Herhangi bir web uygulaması, verileri yönetmek için arka uç olarak bir veritabanına ihtiyaç duyar. Django, arka uç olarak çeşitli veritabanı motorlarını destekler; örneğin, MySQL, PostgreSQL, SQLite vb. PostgreSQL, güçlü ve açık kaynaklı bir nesne-ilişkisel veritabanı sistemidir. Güvenilirliği, ölçeklenebilirliği, güvenliği ve güçlü özellik setiyle tanınır. PostgreSQL hakkında buradan daha fazla bilgi edinebilirsiniz.

Bu kılavuzda, örnek bir Django uygulamasında PostgreSQL'in arka uç olarak nasıl entegre edileceğini göstereceğiz.

Önkoşullar

Django ile çalışmak belirli sistem yapılandırmaları gerektirir.

Bu kılavuz ayrıca, işlevsel bir Django uygulaması için gerekli olan çeşitli Python modüllerinin ve kütüphanelerinin nasıl kullanılacağını da gösterecektir.

Adım 1. Gerekli Bileşenlerin Kurulması

Projemizin çalışması için Ubuntu sistemimizde bir dizi önemli paketin kurulu olması gerekir. Neyse ki bunların tümü resmi Ubuntu paket depolarından doğrudan temin edilebilir. Bu paketler Python bileşenlerini ve veritabanı (PostgreSQL) bileşenlerini içerir.

İlk olarak, terminali başlatın ve APT paket önbelleğini güncelleyin:

Using PostgreSQL with Django 1

Ardından, paketleri kurun:

Using PostgreSQL with Django 2

Adım 2. Veritabanının Hazırlanması

PostgreSQL artık kuruldu ve kullanıma hazır. Sırada, Django uygulamamız için özel bir veritabanı ve kullanıcı oluşturmak var. Özel bir kullanıcıya sahip olmak, veritabanı ve yetki yönetimi açısından faydalıdır.

Kurulum sırasında PostgreSQL, özel bir kullanıcı oluşturur: postgres. Bu kullanıcı, PostgreSQL üzerinde her türlü yönetimsel görevi gerçekleştirme yetkisine sahiptir. postgres hesabına erişin:

Kullanıcı adı altında yeni bir kabuk (shell) oturumuna geçiş yapmalısınız: postgres. Ardından, bir PostgreSQL kabuğu açın:

Şimdi Django uygulamamız için özel bir veritabanı oluşturacağız. Veritabanına Django uygulamasıyla eşleşen bir isim verilmesi önerilir:

Ardından, özel bir veritabanı kullanıcısı oluşturacağız. Bu kullanıcıyı Django'ya özel veritabanına erişmek için kullanacağız:

Bir sonraki adım, yeni kullanıcı için birkaç bağlantı parametresini ince ayar yapmaktır. Bu, her bağlantı kurulduğunda değerlerin tekrar sorgulanmasını gerektirmeyeceğinden veritabanı işlemlerini hızlandırmaya yardımcı olur. Aşağıdaki komutları çalıştırın:

Bu komutların kısa bir açıklamasına göz atalım:

  • Varsayılan kodlamayı UTF-8 olarak ayarlıyoruz. Django'nun veritabanlarıyla etkileşime girerken beklediği şey budur.

  • Varsayılan işlem şeması "read committed" (işlenmişi oku) olarak ayarlanır, böylece işlenmemiş işlemlerden yapılan okumalar engellenir.

  • Saat dilimi, konuma göre ayarlanmalıdır.

Saat diliminin adından emin değilseniz, aşağıdaki komut PostgreSQL tarafından desteklenen tüm saat dilimlerini listeleyecektir:

Using PostgreSQL with Django 4

Son olarak, yeni kullanıcıya Django için ayrılmış veritabanı üzerinde tam yetki verin:

PostgreSQL ile işimiz artık bitti. psql kabuğundan çıkın ve postgres oturumunu kapatın.

Adım 3. Django Kurulumu

Django uygulamamız için gerekli veritabanı sunucusunu yapılandırdık. Şimdi, özel Django uygulamasını kurup yapılandıracağız. Django doğrudan resmi Ubuntu deposunda mevcut olsa da, bu yöntemi kullanmanızı önermiyoruz. Bu, Django'yu sistem genelinde kuracaktır. Daha iyi esneklik ve yönetim kolaylığı için Django'yu sanal bir ortamda kuracağız. Django'yu sanal bir Python ortamında kurup yapılandırmak standart bir uygulamadır.

Python'ın, hedef konumda sanal bir Python ortamı oluşturan bir virtualenv modülü vardır. Bu ortam, Python ikili dosyalarının ve yapılandırmalarının kendi kopyasını alır. Sanal ortam içinde değişiklik yapmak sistemin geri kalanını etkilemeyecektir.

Şunu yükleyin: virtualenv:

Using PostgreSQL with Django 5

Ardından, amacımız Python sanal ortamını kurmak için özel bir dizine sahip olmaktır. Bu, Django uygulamamızın temelini oluşturacaktır. Gösterim amacıyla, uygulama adımız sample_app olacaktır. Yeni bir dizin oluşturun:

Mevcut aktif dizini değiştirin ve sanal ortamı kurun:

Bundan sonra, sanal ortamı etkinleştirin:

Sanal ortam artık hazır ve çalışır durumda. Ardından, pip aracını kullanarak Django ve psycopg2 (PostgreSQL için bir Python adaptörü) kuracağız:

Using PostgreSQL with Django 6

Son olarak, Django araçlarını kullanarak yeni bir Django projesi oluşturabiliriz. Bu, mevcut dizinde tüm kodları barındıran aynı isimde bir alt dizin ve bir yönetim betiği oluşturacaktır:

Adım 4. Django Projesini Yapılandırma

Django projesi, bir web uygulaması olarak çalışmak için tüm temel araçlara sahiptir. Bunu veritabanımızla entegre etmek için yapılandırma dosyalarında bazı ince ayarlar yapmamız gerekecek.

Bir metin düzenleyicide settings.py dosyasını açın:

Aşağı kaydırarak DATABASES bölümüne gelin. Varsayılan olarak, SQLite:

kullanacak şekilde yapılandırılmıştır. Amacımız doğrultusunda kodu aşağıdaki gibi değiştirin:

Burada, Django'ya veritabanı iletişimi için psycopg2 adaptörünü kullanmasını söylüyoruz. Ayrıca veritabanı adı ile birlikte özel kullanıcının kullanıcı adı ve şifresi gibi gerekli tüm veritabanı bilgilerini de bildiriyoruz.

Bitirdikten sonra dosyayı kaydedin ve düzenleyiciyi kapatın.

Adım 5. Veritabanını Taşıma

Django, PostgreSQL veritabanımıza erişecek şekilde yapılandırılmıştır. Artık veri yapısını veritabanımıza taşıyabiliriz. Django'da bu işlem migration.

olarak bilinir. Veritabanı değişikliklerini taşımak için şu yönetim betiğini çağırın: manage.py:


Using PostgreSQL with Django 7

Ardından, Django uygulamamız için bir süper kullanıcı oluşturun:

Using PostgreSQL with Django 8

Bu süper kullanıcı hesabı, Django uygulamamız için yönetici hesabı olarak görev yapacaktır.

Adım 6. Değişiklikleri Test Etme

Şimdiye kadar Django uygulamamızda birden fazla ince ayar yaptık. Her şeyin istendiği gibi çalışıp çalışmadığını kontrol etme zamanı. Bunu uygulamayı başlatarak ve yönetici paneline erişerek doğrulayacağız.

Django uygulamasını yerel olarak geliştirdiğimiz için sunucuyu şurada başlatacağız: localhost. Bir gelenek olarak, onu şu portta başlatacağız: 8000. Yapılandırılmış bir güvenlik duvarınız varsa, o zaman şu porta giden trafiğe izin vermesi gerekir: 8000. Şunun hakkında daha fazla bilgi edinin: UFW'nin temelleri burada.

Django sunucusunu başlatın:

Bir tarayıcıda URL'ye erişin:

Using PostgreSQL with Django 9

Django kurulum başarı sayfasına ulaşmalısınız. Django yönetici sayfasına erişmek için aşağıdaki URL'ye gidin:

Using PostgreSQL with Django 10

Giriş yapmak için oluşturduğumuz süper kullanıcıyı kullanmanız gerekir:

İşte bu kadar! Yönetici paneline başarıyla ulaştık!

Keşfetmeyi bitirdiğinizde, konsoldan Ctrl + C tuşuna basarak Django sunucusunu durdurun.

Son Düşünceler

Bu kılavuzda, örnek bir Django uygulaması kurmayı ve PostgreSQL'i bunun arka ucu olarak yapılandırmayı başarıyla gösterdik. SQLite, geliştirme (ve hafif üretim kullanımı) sırasındaki ihtiyaçları karşılamak için genellikle fazlasıyla yeterli olsa da, çoğu proje daha tam özellikli bir DBMS'ye geçerek büyük ölçüde fayda sağlayacaktır. PostgreSQL, performans ve ölçeklenebilirlik için harika bir seçenektir.

Django, çok sayıda teknolojiyle çalışabilen çok yönlü bir web çerçevesidir. Django kullanımını gösteren diğer bulut kılavuzlarına göz atın:

Keyifli Kodlamalar!

author

Preslav Dobrev

Yazar · CloudSigma

Preslav Dobrev, CloudSigma'da Kreatif Tasarımcı olarak görev yapmakta olup geleneksel ve yenilikçi pazarlama kanallarını kullanarak tutarlı bir kurumsal kimlik oluşturmaya odaklanmaktadır. Sanatsal vizyonu stratejik pazarlamayla harmanlayarak etkili marka anlatıları oluşturma konusunda oldukça yeteneklidir.

Yorumlar

Henüz yorum yapılmamış. İlk siz olun.