Açık Kaynak Uygulamalar

    OpenProject Nedir ve Kurumsal Proje Yönetimi Kurulumu

    Gantt, agile board ve zaman takibini birleştiren kapsamlı açık kaynak proje yönetim platformu OpenProject rehberi.

    11 dk okuma Güncellendi: 10 Temmuz 2026

    Proje yönetimi araçları uzun süre iki ayrı kampa bölünmüştü. Bir yanda inşaat, mühendislik ve klasik planlamanın vazgeçilmezi olan Gantt şemaları, diğer yanda yazılım ekiplerinin sevdiği Scrum ve Kanban panoları vardı. Çoğu ekip bu ikisini farklı araçlarda tutmak zorunda kalıyor, sonuçta ilerleme bir yerde, görevler başka bir yerde, zaman kayıtları bambaşka bir tabloda dağılıyordu. OpenProject tam bu ayrımı ortadan kaldırmak için tasarlanmış, açık kaynaklı ve kendi sunucunuzda barındırabileceğiniz kapsamlı bir proje yönetim platformudur.

    Bu rehberde OpenProject'in ne olduğunu, klasik ve çevik yaklaşımları nasıl tek çatı altında topladığını, hangi modülleri sunduğunu ve kendi sunucunuza Docker ya da paket yöntemiyle nasıl kuracağınızı adım adım ele alacağız. İş paketleri (work packages), yol haritası, versiyonlar, zaman ve bütçe takibini gerçek örneklerle inceleyeceğiz; ardından ters vekil, yedekleme ve güvenlik gibi üretim ortamı için kritik konulara değineceğiz. Verilerini üçüncü bir bulut sağlayıcısına emanet etmek istemeyen, tam kontrol arayan kurumlar için OpenProject güçlü bir seçenek; nedenini birlikte görelim.

    OpenProject nedir, ne işe yarar?#

    OpenProject, ekiplerin projelerini baştan sona planlamasını, yürütmesini ve raporlamasını sağlayan web tabanlı bir yönetim yazılımıdır. En basit tanımıyla, bir projenin fikir aşamasından teslimine kadar geçen her adımı, tek bir arayüzde görünür ve izlenebilir kılar. Görevleri kim üstlenecek, hangi tarihe kadar bitecek, birbirine nasıl bağlı, kaç saat harcandı, bütçe neredeyse tükendi mi gibi soruların tamamının cevabı aynı sistemde durur.

    Platform Ruby on Rails ile geliştirilmiştir ve GPL lisansıyla dağıtılan ücretsiz bir Community Edition ile ticari destek sunan Enterprise sürümlerine sahiptir. Topluluk sürümü bile klasik ve çevik yöntemleri, iş paketlerini, zaman takibini, wiki'yi ve raporlamayı içerdiği için birçok ekip için fazlasıyla yeterlidir. Kurumsal sürüm ise özel iş akışı otomasyonları, gelişmiş rozet ve grafik türleri, tek oturum açma (SSO) ile ölçekli destek gibi ekstralar ekler.

    OpenProject'in en belirleyici özelliği, kendi altyapınızda çalışabilmesidir. Kaynak kodu, planları ve müşteri verileri şirket dışına çıkmadan, tamamen sizin denetiminizdeki bir sunucuda kalır. Bu, KVKK ve iç güvenlik politikalarına duyarlı Türk kurumları için doğal bir tercih sebebidir. Benzer bir self-hosted felsefeyi kod tarafında Gitea rehberimizde, dokümantasyon tarafında ise Outline yazımızda da işlemiştik; OpenProject bu üçlünün proje yönetimi ayağını tamamlar.

    Klasik ve çevik yönetimi tek çatıda#

    OpenProject'i benzerlerinden ayıran asıl güç, iki yönetim felsefesini aynı projede yan yana kullanabilmenizdir. Aynı iş paketi hem bir Gantt şemasında bir çubuk, hem bir Kanban panosunda bir kart olarak görünebilir. Böylece üst yönetim projeye takvim gözüyle bakarken, geliştirme ekibi aynı işleri sprint mantığıyla yürütebilir.

    Klasik (Gantt) tarafı, zaman eksenli bir çizelgede tüm görevleri, sürelerini ve aralarındaki bağımlılıkları gösterir. Bir görevi sürükleyip bıraktığınızda ona bağlı görevler otomatik kayar, kritik yol netleşir ve kilometre taşları (milestone) belirginleşir. İnşaat, üretim ve danışmanlık gibi tarih odaklı projelerde bu görünüm vazgeçilmezdir.

    Çevik (agile) tarafı, Scrum ve Kanban panolarıyla gelir. Backlog'unuzu oluşturur, sprint'lere iş çeker, kartları "Yapılacak → Devam Ediyor → İncelemede → Bitti" sütunları arasında taşırsınız. İş yükü grafikleri (burndown) sprint'in gidişatını gösterir. Aşağıdaki tablo iki yaklaşımın OpenProject içindeki karşılıklarını özetler:

    KonuKlasik (Gantt)Çevik (Agile)
    Temel görünümZaman çizelgesiKanban / Scrum panosu
    Planlama birimiGörev + kilometre taşıSprint + backlog
    İlerleme ölçütüYüzde tamamlanmaBurndown grafiği
    Uygun projeİnşaat, üretim, danışmanlıkYazılım, ürün, pazarlama
    Değişime uyumDüşük, planlıYüksek, iteratif

    Önemli olan, ikisini birbirinden ayrı iki dünya gibi değil, aynı verinin iki farklı yansıması gibi görebilmektir. Bir yönetici raporunu Gantt'tan alırken, geliştirici günlük işini panodan yürütür ve ikisi de her zaman güncel kalır.

    Docker ile kurulum#

    OpenProject'i kurmanın en hızlı ve en temiz yolu Docker'dır. Resmi imaj, uygulamayı, veritabanını ve arka plan işçilerini tek bir bileşende toplayan "all-in-one" bir yapı sunar; ancak üretim için PostgreSQL'i ayrı bir konteynerde tutan bir docker compose yapılandırması daha sağlıklıdır. Donanım olarak küçük bir ekip için 2 vCPU ve 4 GB RAM'e sahip bir sanal sunucu iyi bir başlangıçtır; kullanıcı ve proje sayısı arttıkça belleği yükseltmeniz gerekir.

    Aşağıdaki docker-compose.yml hem uygulamayı hem de PostgreSQL veritabanını ayağa kaldırır:

    services:
      openproject:
        image: openproject/openproject:14
        container_name: openproject
        restart: unless-stopped
        environment:
          OPENPROJECT_HOST__NAME: proje.sirketiniz.com
          OPENPROJECT_HTTPS: "true"
          OPENPROJECT_DEFAULT__LANGUAGE: tr
          DATABASE_URL: postgres://openproject:degistirin_parola@db/openproject
          SECRET_KEY_BASE: uzun_rastgele_bir_anahtar_uretin
        volumes:
          - opdata:/var/openproject/assets
        ports:
          - "8080:80"
        depends_on:
          - db
      db:
        image: postgres:16
        container_name: openproject_db
        restart: unless-stopped
        environment:
          POSTGRES_DB: openproject
          POSTGRES_USER: openproject
          POSTGRES_PASSWORD: degistirin_parola
        volumes:
          - opdb:/var/lib/postgresql/data
    volumes:
      opdata:
      opdb:
    

    SECRET_KEY_BASE değeri, oturumları imzalayan kritik bir anahtardır ve tahmin edilemez olmalıdır. Şu komutla üretebilirsiniz:

    openssl rand -hex 64
    

    Ardından yapıyı çalıştırmak için dosyanın bulunduğu dizinde tek komut yeterlidir:

    docker compose up -d
    

    İlk açılış birkaç dakika sürebilir; OpenProject bu sırada veritabanı şemasını oluşturur ve varlıkları hazırlar. Konteyner ayağa kalktıktan sonra sunucunuzun :8080 portuna giderek karşılama ekranına ulaşırsınız. Varsayılan yönetici hesabı admin / admin ile gelir — ilk girişte parolayı mutlaka değiştirin. Hazır uygulama kurulumlarıyla tek tek uğraşmak istemiyorsanız, App Center kataloğumuzdan benzer araçları tek tıkla ayağa kaldırabilirsiniz.

    Paket kurulumu ve yapılandırma#

    Docker yerine sunucuya doğrudan kurmayı tercih edenler için OpenProject, DEB ve RPM paketleri de sunar. Bu yöntem, tüm bağımlılıkları (Ruby, PostgreSQL, Apache) tek pakette getirir ve bir sihirbaz (openproject configure) ile yapılandırılır. Ubuntu/Debian üzerinde tipik akış şöyledir:

    # Depo anahtarını ekle ve paketi kur
    wget -qO- https://dl.packager.io/srv/opproject/openproject/key | sudo apt-key add -
    sudo apt update && sudo apt install openproject
    # İnteraktif yapılandırma sihirbazını başlat
    sudo openproject configure
    

    Sihirbaz size veritabanı, web sunucusu, e-posta ve SSL tercihlerini sorar. E-posta gönderimini (parola sıfırlama, bildirim, atama uyarıları için şart) yapılandırmak isterseniz, SMTP ayarlarını bir konfigürasyon dosyasında da tutabilirsiniz:

    [smtp]
    address = smtp.sirketiniz.com
    port = 587
    domain = sirketiniz.com
    user_name = [email protected]
    password = eposta_parolasi
    authentication = login
    enable_starttls_auto = true
    

    Kurumsal e-posta altyapınız yoksa, güvenilir bir e-posta hizmeti kullanmanız teslim edilebilirlik açısından önemlidir; kendi sunucunuzdan gönderilen bildirimler sık sık spam kutusuna düşebilir. Paket kurulumunda güncelleme de basittir: apt upgrade openproject sonrası openproject configure çalıştırmak yeterlidir.

    Ters vekil ve SSL#

    OpenProject'i doğrudan iç portundan yayına almak yerine önüne bir ters vekil (reverse proxy) koymak, üretim ortamı için standart yaklaşımdır. Böylece uygulamaya 443 portundan HTTPS ile erişilir, sertifika yönetimi tek noktada toplanır ve gerekirse aynı sunucuda başka servisleri de barındırabilirsiniz. Nginx için tipik bir yapılandırma şöyle görünür:

    server {
        listen 443 ssl http2;
        server_name proje.sirketiniz.com;
    
        ssl_certificate     /etc/letsencrypt/live/proje.sirketiniz.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/proje.sirketiniz.com/privkey.pem;
    
        client_max_body_size 128m;
    
        location / {
            proxy_pass http://127.0.0.1:8080;
            proxy_set_header Host              $host;
            proxy_set_header X-Real-IP         $remote_addr;
            proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto https;
        }
    }
    

    client_max_body_size değerini yeterince yüksek tutmak, kullanıcıların iş paketlerine büyük ekler yüklemesi için gereklidir. Bu yapının çalışması için alan adınızın sunucunuza yönlenmiş olması gerekir; DNS tarafında basit bir A kaydı yeterlidir:

    proje    IN    A    203.0.113.25
    

    Son olarak HTTPS'i etkinleştirmeden üretime çıkmayın. Ücretsiz bir Let's Encrypt sertifikası ya da yönettiğimiz SSL sertifikası çözümlerimiz ile trafiği şifrelemek, giriş bilgilerinin ve proje verilerinin açık aktarılmasını engeller. Sunucu tarafını kendiniz yönetmek istemiyorsanız, sunucu yönetimi hizmetimiz bu kurulumu ve bakımı sizin adınıza üstlenir.

    İş paketleri, yol haritası ve versiyonlar#

    OpenProject'te her iş biriminin adı iş paketi (work package) olur. Bir iş paketi bir görev, bir hata, bir özellik, bir kilometre taşı ya da bir kullanıcı hikayesi olabilir; hepsi aynı esnek yapının farklı "tür"leridir. Her iş paketinin bir durumu, sorumlusu, önceliği, başlangıç ve bitiş tarihi, tahmini ve harcanan süresi vardır. İş paketleri birbirine bağlanabilir: bir görev diğerinin "üst öğesi" (parent) olabilir, "engelliyor" ya da "önce gelir" gibi ilişkilerle takvimi birbirine kilitleyebilir.

    İş paketlerini hiyerarşik olarak düzenlemek, büyük projeleri yönetilebilir parçalara ayırır. Üst düzeyde "Epik" seviyesinde bir hedef, altında birkaç "Özellik", onların da altında somut "Görev"ler bulunur. Bu ağaç yapısı, hem üst yönetimin büyük resmi görmesini hem de ekibin günlük ayrıntıya inmesini aynı anda mümkün kılar.

    Yol haritası (roadmap) ise projenin zaman içinde nereye gittiğini gösteren üst düzey görünümdür. Versiyonlar (sürümler) üzerinden ilerler: her versiyona bir grup iş paketi atanır, versiyonun tamamlanma yüzdesi otomatik hesaplanır. Örneğin bir yazılım projesinde v1.0, v1.1, v2.0 versiyonları tanımlar, her özelliği ilgili versiyona bağlarsınız; yol haritası sayfası hangi sürümün ne kadar hazır olduğunu tek bakışta özetler. Bu yapı, dokümantasyonu Outline gibi bir wiki ile birleştirdiğinizde, "ne yapıldı, ne yapılacak, nasıl kullanılır" üçlüsünü tek ekosistemde toplamanızı sağlar.

    Zaman ve bütçe takibi#

    Bir projenin başarısı çoğu zaman planlandığı gibi değil, ne kadar zaman ve para tükettiğiyle ölçülür. OpenProject bu iki boyutu iş paketlerinin içine gömer. Ekip üyeleri her iş paketine harcadıkları saatleri girer; bu kayıtlar bir aktivite türüne (geliştirme, test, toplantı, tasarım vb.) bağlanır. Böylece "bu projede en çok zaman nereye gidiyor" sorusu, tahmine değil veriye dayanır.

    Zaman kayıtları maliyet raporlarının temelini oluşturur. Her aktivite türüne bir saatlik ücret tanımlar, işçilik maliyetini otomatik hesaplatırsınız. Buna malzeme veya lisans gibi birim maliyetleri de ekleyip projenin toplam bütçesini takip edersiniz. Aşağıdaki tablo, temel takip kavramlarını özetler:

    KavramNe işe yarar
    Tahmini süreGörevin planlanan iş yükü
    Harcanan süreGirilen zaman kayıtlarının toplamı
    Kalan süreTahmin eksi harcanan
    İşçilik maliyetiHarcanan süre çarpı saatlik ücret
    Birim maliyetMalzeme, lisans gibi sabit kalemler

    Raporlama modülü bu verileri kullanıcıya, aktiviteye, versiyona ya da tarih aralığına göre gruplayıp özetler. Yönetici, "geçen ay hangi müşteriye kaç saat harcadık, faturalanabilir zaman ne kadar" sorusuna dakikalar içinde cevap bulur. Faturalama yapan ajanslar için bu, kâr-zarar hesabını dolaylı tahminlerden çıkarıp somut sayılara oturtan en değerli özelliktir.

    Yedekleme, güncelleme ve güvenlik#

    Projelerinizin planı, geçmişi ve zaman kayıtları işinizin hafızasıdır; bunları kaybetmek geri dönüşü zor bir felakettir. OpenProject'te yedeklenmesi gereken üç bileşen vardır: PostgreSQL veritabanı, yüklenen dosyalar (ekler) ve yapılandırma. Docker kurulumunda veritabanını düzenli olarak dışa aktarmak için pg_dump kullanılır:

    docker exec openproject_db pg_dump -U openproject openproject \
      | gzip > /yedek/openproject-$(date +%F).sql.gz
    

    Geri yükleme gerektiğinde ise sıkıştırılmış dosyayı veritabanına aktarırsınız. Aşağıdaki SQL örneği, temiz bir veritabanına dökümü geri almanın mantığını gösterir:

    -- Boş bir veritabanına dökümü geri yükle
    CREATE DATABASE openproject_restore;
    \c openproject_restore
    \i /yedek/openproject-2026-07-10.sql
    

    Yedeklerinizi mutlaka sunucu dışında, ayrı bir konumda saklayın; aynı diskteki yedek, sunucu tümden kaybolduğunda hiçbir işe yaramaz. Bu süreci elle yürütmek yerine, otomatik ve dışa aktarımlı bir yedekleme hizmetiyle güvence altına almak en sağlıklı yoldur.

    Güvenlik tarafında birkaç temel önlem kurulumunuzu ciddi ölçüde sağlamlaştırır. Her zaman HTTPS kullanın ve admin varsayılan parolasını ilk girişte değiştirin. Kullanıcı hesapları için iki adımlı doğrulamayı (2FA) etkinleştirin; OpenProject TOTP tabanlı doğrulamayı destekler. Rol tabanlı yetkilendirme ile her kullanıcıya yalnızca ihtiyaç duyduğu projelere erişim verin. Veritabanı portunu asla internete açmayın ve OpenProject'i düzenli güncelleyerek güvenlik yamalarından yararlanın. Sürekli çalışan bu tür bir servisi barındırmak için izole ve ölçeklenebilir bir sanal sunucu (VDS) en uygun zemindir.

    Sıkça Sorulan Sorular#

    OpenProject ücretsiz mi?#

    Evet, OpenProject'in Community Edition sürümü tamamen ücretsizdir ve GPL lisansıyla açık kaynak olarak dağıtılır. Bu sürüm; iş paketleri, Gantt, Kanban, zaman takibi, wiki ve raporlama gibi çekirdek özelliklerin neredeyse tamamını içerir, dolayısıyla çoğu ekip için fazlasıyla yeterlidir. Yalnızca aracı çalıştıracağınız sunucunun maliyeti vardır. Gelişmiş iş akışı otomasyonu, tek oturum açma ve öncelikli destek isteyen büyük kurumlar için ücretli Enterprise sürümü ayrıca sunulur.

    OpenProject ile Jira arasındaki temel fark nedir?#

    En belirgin fark barındırma modeli ve maliyettir. OpenProject açık kaynaklıdır ve kendi sunucunuzda ücretsiz çalıştırılabilir, böylece verileriniz tamamen sizin denetiminizde kalır. Jira ise ağırlıklı olarak bulut tabanlı, kullanıcı başına ücretlendirilen ticari bir üründür. Özellik açısından ikisi de klasik ve çevik yönetimi destekler; ancak OpenProject Gantt ile agile'ı aynı projede daha doğal biçimde birleştirirken, Jira'nın eklenti pazarı ve entegrasyon ekosistemi daha geniştir. Veri sahipliği ve öngörülebilir maliyet önceliğinizse OpenProject öne çıkar.

    Kaç kullanıcıya kadar ölçeklenir?#

    OpenProject, birkaç kişilik küçük ekiplerden yüzlerce kullanıcılı kurumlara kadar geniş bir aralıkta çalışır. Belirleyici olan kullanıcı sayısından çok eş zamanlı etkinlik ve veri hacmidir. 10-20 kişilik bir ekip için 2 vCPU ve 4 GB RAM iyi bir başlangıçtır; yüzlerce aktif kullanıcı için CPU, bellek ve PostgreSQL performansını yükseltmeniz, hatta uygulama ile veritabanını ayrı sunuculara ayırmanız gerekebilir. Doğru boyutlandırılmış bir sunucuda büyük kurumsal kurulumlar sorunsuz yürür.

    Verilerimi başka bir araçtan taşıyabilir miyim?#

    Kısmen evet, ancak yönteme dikkat etmek gerekir. OpenProject, iş paketlerini CSV ve XLS biçiminde içe ve dışa aktarmayı destekler; bu, Excel ya da başka araçlardan görev listelerini taşımak için pratik bir yoldur. Daha karmaşık geçişler için API üzerinden toplu içe aktarım yazılabilir. Jira gibi araçlardan taşınırken alan eşleştirmesini (durumlar, öncelikler, özel alanlar) önceden planlamak, verinin bütünlüğünü korumak açısından önemlidir. Küçük projeleri önce deneme olarak taşıyıp sonucu doğrulamak en güvenli yaklaşımdır.

    Mobil uygulaması var mı?#

    OpenProject'in arayüzü duyarlı (responsive) olduğu için telefon ve tablet tarayıcılarında rahatça kullanılabilir; iş paketlerini görüntülemek, yorum yazmak ve durum güncellemek için ayrı bir uygulamaya çoğu durumda ihtiyaç duyulmaz. Ayrıca REST API'si sayesinde üçüncü taraf istemcilerle ya da kendi geliştirdiğiniz araçlarla entegrasyon mümkündür. Yoğun sahada çalışan ekipler için tarayıcı tabanlı erişim, ek kurulum gerektirmediğinden pratik bir çözüm sunar.

    OpenProject'i güncellemek zor mu?#

    Hayır, güncelleme sürecinin ikisi de görece basittir. Docker kurulumunda imaj etiketini yeni sürümle değiştirip konteyneri yeniden oluşturmanız yeterlidir; uygulama başlarken veritabanı göçlerini (migration) otomatik uygular. Paket kurulumunda ise apt upgrade openproject sonrası openproject configure çalıştırmak yeni sürümü devreye alır. Her iki senaryoda da güncellemeden önce mutlaka bir yedek almanız gerekir, çünkü büyük sürüm atlamalarında geri dönmek ancak yedekle mümkündür.

    Kapanış#

    OpenProject, klasik takvim planlamasıyla çevik pano yönetimini tek çatı altında birleştiren, olgun ve tam özellikli bir açık kaynak proje yönetim platformudur. İş paketleri, yol haritası, versiyonlar, zaman ve bütçe takibi sayesinde bir projenin fikirden teslime kadar tüm yaşam döngüsünü tek yerde görünür kılar. Üstelik kendi sunucunuzda çalıştığı için planlarınız, müşteri verileriniz ve zaman kayıtlarınız şirket dışına çıkmadan tamamen sizin denetiminizde kalır.

    Kendi OpenProject sunucunuzu kurmak için sağlam, izole ve ölçeklenebilir bir zemine ihtiyacınız var. Bu tür sürekli çalışan servisler için sanal sunucu (VDS) çözümlerimizi inceleyebilir, kurulum ve bakımla uğraşmadan hazır uygulamalar için App Center kataloğumuza göz atabilir, sunucunuzun günlük yönetimini bize bırakmak isterseniz sunucu yönetimi hizmetimizden yararlanabilirsiniz. Ekibinizin verimini artıran bir proje yönetim altyapısını bugün kendi kontrolünüzde kurmaya başlayabilirsiniz.

    projekurumsalself-hosted

    Uygulamaya geçmeye hazır mısınız?

    NVMe SSD, ücretsiz SSL ve %99.9 uptime garantisiyle Clou.TR hosting ve sunucu çözümleriyle projenizi hayata geçirin.