🚀 pgAdmin 4 Kurulumu – Ubuntu’da Sunucu Modu Yapılandırma
📌 Bu Rehberde Ne Öğreneceksiniz?
Bu rehber, Ubuntu tabanlı bir sunucuda pgAdmin 4'ü Sunucu Modunda kurmayı, Python sanal ortamında çalıştırmayı ve Nginx + Gunicorn ile web’e açmayı öğretir.
🧠 1. Teknik Özet
Amaç: pgAdmin 4’ü Python sanal ortamında kurmak ve grafiksel PostgreSQL yönetimi sağlamak.
Adımlar: Bağımlılık kurulumu → venv aktivasyonu → pgAdmin kurulumu → config yapılandırma → Gunicorn + Nginx → PostgreSQL bağlantısı.
2. pgAdmin 4 ve Bağımlılıkların Kurulumu
2.1 Paket dizinini güncelleyin:
sudo apt update
Bu komut sistemdeki paket listesini yeniler.
2.2 Bağımlılıkları kurun:
sudo apt install libgmp3-dev libpq-dev
pgAdmin’in çalışması için gerekli temel kütüphaneleri kurar.
2.3 Gerekli dizinleri oluşturun:
sudo mkdir -p /var/lib/pgadmin4/sessions
sudo mkdir /var/lib/pgadmin4/storage
sudo mkdir /var/log/pgadmin4
pgAdmin’in oturum, depolama ve log dosyaları için klasörleri oluşturur.
2.4 Dizin izinlerini düzenleyin:
sudo chown -R sammy:sammy /var/lib/pgadmin4 /var/log/pgadmin4
Kurulum sırasında pgAdmin’in yazabilmesi için geçici izin verir.
2.5 Sanal ortamı etkinleştirin:
cd environments/
source my_env/bin/activate
pgAdmin’i izole bir Python ortamında kurmanızı sağlar.
2.6 pip’i güncelleyin:
python -m pip install -U pip
Sanal ortamdaki pip’in güncel olmasını sağlar.
2.7 pgAdmin wheel dosyasını indirin:
wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v6.10/pip/pgadmin4-6.10-py3-none-any.whl
pgAdmin 4’ün Python dağıtım paketini indirir.
2.8 wheel paketini kurun:
python -m pip install wheel
.whl dosyalarını kurmak için gerekli araçları sağlar.
2.9 pgAdmin 4 paketini kurun:
python -m pip install pgadmin4-6.10-py3-none-any.whl
pgAdmin’i sanal ortama yükler.
2.10 Gunicorn WSGI sunucusunu kurun:
python -m pip install gunicorn
pgAdmin’i web’de çalıştıracak uygulama sunucusunu kurar.
3. pgAdmin 4 Yapılandırması
3.1 config_local.py oluşturun:
nano my_env/lib/python3.10/site-packages/pgadmin4/config_local.py
pgAdmin ayarlarını özelleştireceğiniz dosyayı açar.
3.2 Aşağıdaki yapılandırmayı ekleyin:
LOG_FILE = '/var/log/pgadmin4/pgadmin4.log'
SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db'
SESSION_DB_PATH = '/var/lib/pgadmin4/sessions'
STORAGE_DIR = '/var/lib/pgadmin4/storage'
SERVER_MODE = True
pgAdmin’i Sunucu Moduna alır ve gerekli dosya yollarını tanımlar.
3.3 İlk kullanıcı hesap kurulumunu çalıştırın:
python my_env/lib/python3.10/site-packages/pgadmin4/setup.py
pgAdmin paneline giriş için admin hesabı oluşturur.
4. Gunicorn ve Nginx Yapılandırması
4.1 Örnek Nginx reverse proxy yapılandırması:
server {
listen 80;
server_name panel.rabisu.cloud;
location / {
proxy_pass http://unix:/tmp/pgadmin4.sock;
include proxy_params;
}
}
Nginx, dış istekleri Gunicorn soketine yönlendirir.
4.2 Gunicorn’u başlatın:
gunicorn --bind unix:/tmp/pgadmin4.sock --workers=1 --threads=25 \
--chdir ~/environments/my_env/lib/python3.10/site-packages/pgadmin4 pgAdmin4:app
pgAdmin uygulamasını Gunicorn üzerinden çalıştırır.
5. PostgreSQL Kullanıcısına Parola Atama
5.1 PostgreSQL’e giriş:
sudo -u sammy psql
PostgreSQL süper kullanıcısı olarak komut satırını açar.
5.2 Kullanıcıya parola atayın:
ALTER USER sammy PASSWORD 'GüçlüBirParola123';
pgAdmin’in PostgreSQL’e bağlanmasını mümkün kılar.
5.3 PostgreSQL’den çıkın:
\q
PSQL oturumunu sonlandırır.
6. pgAdmin Web Arayüzüne Erişim
- Tarayıcınıza yazın:
http://panel.rabisu.cloud
pgAdmin giriş ekranına ulaşırsınız.
7. PostgreSQL Sunucusunu pgAdmin’e Ekleme
7.1 Bağlantı ayarları:
- Host: localhost
- Port: 5432
- Maintenance DB: sammy
- Username: sammy
- Password: belirlediğiniz parola
pgAdmin ile PostgreSQL arasında bağlantı oluşturur.
8. Tablo Oluşturma ve Veri Ekleme
8.1 Örnek INSERT sorgusu:
INSERT INTO public."table01"(col1, col2, col3)
VALUES ('Juneau', 14, 337),
('Bismark', 90, 2334),
('Lansing', 51, 556);
Oluşturduğunuz tabloya örnek veri ekler.
❓ Sıkça Sorulan Sorular
1. pgAdmin 4 neden tercih ediliyor? Modern, hızlı ve web tabanlı yönetim paneli sunduğu için.
2. Sunucu Modu ne işe yarar? pgAdmin’i çok kullanıcılı web paneline dönüştürür.
3. Gunicorn ve Nginx neden birlikte kullanılır? Gunicorn uygulamayı çalıştırır, Nginx dış dünyadan güvenli erişim sağlar.
4. PostgreSQL neden parola ister? GUI araçları parola tabanlı bağlantı gerektirir.
5. Gunicorn’u kalıcı çalıştırmak için ne yapılır? Supervisor veya systemd servisi oluşturulur.
🎯 Sonuç
Bu rehberle pgAdmin 4’ü Ubuntu üzerinde kurdunuz, yapılandırdınız ve PostgreSQL ile entegre ettiniz.
Artık veritabanınızı grafiksel web paneli üzerinden yönetebilirsiniz.
Daha fazla içerik için Rabisu Bulut platformunu ziyaret edebilirsiniz.