format_list_bulletedBu İçerikte Bahsedilen Konular
- arrow_rightRedmine Nedir ve Neden Kullanmalısınız?
- arrow_rightSunucu Gereksinimleri ve Hazırlık
- arrow_rightDonanım Gereksinimleri
- arrow_rightYazılım Gereksinimleri
- arrow_rightUbuntu Üzerinde Redmine Kurulum Adımları
- arrow_rightAdım 1: Sistem Güncelleme ve Bağımlılıklar
- arrow_rightAdım 2: Veritabanı Kurulumu
- arrow_rightAdım 3: Ruby Kurulumu
- arrow_rightAdım 4: Redmine İndirme ve Konfigürasyon
- arrow_rightAdım 5: Gem Bağımlılıkları ve Veritabanı Migrasyonu
- arrow_rightAdım 6: Web Sunucusu Yapılandırması
- arrow_rightRedmine Güvenlik Yapılandırması
- arrow_rightSSL/TLS Sertifikası Kurulumu
- arrow_rightGüvenlik Duvarı Yapılandırması
- arrow_rightYedekleme Stratejisi
- arrow_rightRedmine Eklenti Kurulumu
- arrow_rightPerformans Optimizasyonu
- arrow_rightÖnbellek Yapılandırması
- arrow_rightAsset Pipeline
- arrow_rightVeritabanı İndeksleri
- arrow_rightSunucu Bakımı ve İzleme
- arrow_rightLog İzleme
- arrow_rightOtomatik Bakım
- arrow_rightSonuç
Redmine Nedir ve Neden Kullanmalısınız?
Redmine, açık kaynak kodlu, esnek ve güçlü bir proje yönetim aracıdır. 2006 yılından bu yana geliştirilen bu platform, dünya genelinde 250.000'den fazla aktif kurulum sayısına ulaşmıştır. Türkiye'de de özellikle yazılım geliştirme firmaları, ajanslar ve IT ekipleri tarafından yaygın olarak tercih edilmektedir.
Redmine'ın temel özellikleri şunlardır:
- Çoklu proje desteği tek bir panelden yönetim imkanı
- Gantt şeması ve takvim entegrasyonu
- Git ve SVN depoları ile entegrasyon
- Zaman takibi ve raporlama sistemi
- Esnek rol ve izin sistemi
- Granüler erişim kontrolü sayesinde sunucu erişim kontrolü sağlanması
Sunucu Gereksinimleri ve Hazırlık
Redmine'ı başarıyla çalıştırmak için sunucunuzun belirli minimum gereksinimleri karşılaması gerekmektedir.
Donanım Gereksinimleri
| Kaynak | Minimum | Önerilen |
|---|---|---|
| CPU | 1 çekirdek | 2+ çekirdek |
| RAM | 1 GB | 2+ GB |
| Disk | 10 GB SSD | 20+ GB SSD |
| İşletim Sistemi | Ubuntu 20.04+ / Debian 11+ | Ubuntu 22.04 LTS |
Profesyonel bir hosting altyapısı için veri merkezi hizmetlerini değerlendirebilirsiniz. Özellikle yüksek trafikli ekipler için dedicated sunucular önerilmektedir.
Yazılım Gereksinimleri
Redmine, Ruby on Rails frameworkü üzerinde çalışır. Kurulum öncesi aşağıdaki yazılımların sisteminizde bulunması gerekir:
- Ruby 3.0 veya üzeri sürüm
- Ruby on Rails 7.x
- MySQL 8.0 / PostgreSQL 13+ / SQLite3
- Apache veya Nginx web sunucusu
- ImageMagick (resim işleme için)
- Node.js (JavaScript derleme için)
Ubuntu Üzerinde Redmine Kurulum Adımları
Adım 1: Sistem Güncelleme ve Bağımlılıklar
Öncelikle sunucunuzu güncelleyerek başlayın:
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential libmysqlclient-dev imagemagick libmagickwand-dev ruby-dev libssl-dev pkg-config
Adım 2: Veritabanı Kurulumu
MySQL sunucusunu kurarak başlayın:
sudo apt install -y mysql-server
sudo mysql_secure_installation
Redmine için veritabanı ve kullanıcı oluşturun:
sudo mysql -u root -p
CREATE DATABASE redmine CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'sifreniz';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Adım 3: Ruby Kurulumu
RVM (Ruby Version Manager) ile Ruby'yi kurmanız önerilir:
gpg --keyserver keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -sSL https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
rvm install 3.2.0
rvm use 3.2.0 --default
Adım 4: Redmine İndirme ve Konfigürasyon
En son Redmine sürümünü indirin:
cd /opt
sudo wget https://www.redmine.org/releases/redmine-5.1.1.tar.gz
sudo tar -xzf redmine-5.1.1.tar.gz
sudo cp -r redmine-5.1.1 /var/www/redmine
cd /var/www/redmine
Konfigürasyon dosyasını düzenleyin:
sudo cp config/database.yml.example config/database.yml
sudo nano config/database.yml
Aşağıdaki içeriği veritabanı bilgilerinize göre düzenleyin:
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "sifreniz"
encoding: utf8mb4
Adım 5: Gem Bağımlılıkları ve Veritabanı Migrasyonu
Gerekli Ruby paketlerini yükleyin:
sudo gem install bundler
sudo bundle install --without development test
Veritabanı şemasını oluşturun:
sudo bundle exec rake db:migrate RAILS_ENV=production
sudo bundle exec rake redmine:load_default_data RAILS_ENV=production
Türkçe dil seçeneği için "tr" girin.
Adım 6: Web Sunucusu Yapılandırması
Nginx ve Passenger kombinasyonu performanslı bir kurulum için idealdir:
sudo apt install -y nginx passenger
sudo nano /etc/nginx/sites-available/redmine
Nginx konfigürasyonu:
server {
listen 80;
server_name proje.sirketiniz.com;
root /var/www/redmine/public;
passenger_enabled on;
passenger_ruby /usr/local/rvm/wrappers/ruby-3.2.0/ruby;
passenger_min_instances 1;
client_max_body_size 10M;
location ~ ^/(assets|plugins)/ {
expires max;
gzip_static on;
}
}
Siteyi etkinleştirin:
sudo ln -s /etc/nginx/sites-available/redmine /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
Redmine Güvenlik Yapılandırması
Proje yönetim sunucunuzun güvenliği kritik öneme sahiptir. Aşağıdaki adımları uygulamanızı öneririz:
SSL/TLS Sertifikası Kurulumu
Let's Encrypt ücretsiz sertifikası ile güvenli bağlantı sağlayın:
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d proje.sirketiniz.com
Otomatik yenileme için cron job ekleyin:
sudo certbot renew --dry-run
Güvenlik Duvarı Yapılandırması
UFW ile sunucu erişimini kısıtlayın:
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
Yedekleme Stratejisi
Düzenli yedekleme için aşağıdaki betiği kullanabilirsiniz:
#!/bin/bash
BACKUP_DIR="/backup/redmine"
DATE=$(date +%Y%m%d)
mkdir -p $BACKUP_DIR
# Veritabanı yedeği
mysqldump -u redmine -p redmine > $BACKUP_DIR/redmine_$DATE.sql
# Dosya yedeği
tar -czf $BACKUP_DIR/files_$DATE.tar.gz /var/www/redmine/files
# 7 günden eski yedekleri sil
find $BACKUP_DIR -type f -mtime +7 -delete
Redmine Eklenti Kurulumu
Redmine'ın işlevselliğini artırmak için popüler eklentiler:
| Eklenti | İşlev | Kurulum Komutu |
|---|---|---|
| Redmine CRM | CRM entegrasyonu | bundle exec rake redmine:plugins:migrate |
| Agile | Kanban tahtası | Premium eklenti |
| Git Hosting | Git deposu yönetimi | Plugin kurulumu |
| Slack | Slack bildirimleri | API entegrasyonu |
Performans Optimizasyonu
Redmine performansını artırmak için yapabilecekleriniz:
Önbellek Yapılandırması
Production ortamında önbellek kullanımını etkinleştirin:
sudo nano /var/www/redmine/config/environments/production.rb
Aşağıdaki satırı bulun ve düzenleyin:
config.cache_classes = true
config.action_controller.perform_caching = true
Asset Pipeline
JavaScript ve CSS dosyalarını sıkıştırın:
config.assets.js_compressor = :terser
config.assets.css_compressor = :sass
Veritabanı İndeksleri
Sık kullanılan sorgular için indeksler oluşturun:
CREATE INDEX idx_issues_status ON issues(status_id);
CREATE INDEX idx_issues_project ON issues(project_id);
Sunucu Bakımı ve İzleme
Redmine sunucunuzun sürekli çalışır durumda kalması için izleme sistemi kurmanızı öneriyoruz. Detaylı bilgi için sunucu güvenliği ve izleme rehberimize göz atabilirsiniz.
Log İzleme
Error loglarını düzenli kontrol edin:
tail -f /var/www/redmine/log/production.log sudo logrotate -f /etc/logrotate.d/nginxOtomatik Bakım
Her gece çalışan bir bakım betiği oluşturun:
0 3 * * * cd /var/www/redmine && RAILS_ENV=production bundle exec rake redmine:plugins:migrate 0 4 * * * cd /var/www/redmine && RAILS_ENV=production bundle exec rake tmp:cache:clearSonuç
Bu rehberde, Ubuntu sunucusu üzerinde tam işlevsel bir Redmine kurulumunu adım adım ele aldık. Kendi proje yönetim sunucunuzu kurmak, verilerinizin tam kontrolünü elinizde tutmanızı sağlar ve abonelik maliyetlerinden tasarruf etmenize olanak tanır.
Kurulum sırasında karşılaştığınız sorular için iletişim sayfamızdan destek alabilirsiniz. Ayrıca farklı oyun sunucuları için 7 Days to Die sunucu ve Arma 3 sunucu hizmetlerimizi de inceleyebilirsiniz.
Özellikle ekip büyümesiyle birlikte sunucu kaynaklarınızı düzenli olarak gözden geçirmeyi unutmayın. Web sitesi performans rehberimiz sunucunuzun hızını artırmak için ek ipuçları içermektedir.