Odoo Nedir? Hazır image kurulumu

Odoo (eski adıyla OpenERP), Python programlama dili ile geliştirilmiş kapsamlı bir ERP (Enterprise Resource Planning) sistemidir. Belçika merkezli Odoo S.A. tarafından geliştirilmektedir.

Ana Özellikler

Modüler Yapı: CRM, satış, muhasebe, envanter, üretim, insan kaynakları, e-ticaret gibi 30’dan fazla iş uygulamasını içerir. Her modül bağımsız olarak kullanılabilir veya diğer modüllerle entegre edilebilir.

Web Tabanlı: Tamamen web arayüzü üzerinden çalışır, herhangi bir platformdan erişilebilir.

Açık Kaynak: Community Edition ücretsizdir ve kaynak kodu açıktır. Enterprise Edition ise ek özellikler ve destek içerir.

Teknik Altyapı

  • Backend: Python (Django benzeri framework kullanır)
  • Frontend: JavaScript, XML, CSS
  • Veritabanı: PostgreSQL
  • Mimari: MVC (Model-View-Controller) yapısı

Kullanım Alanları

Küçük işletmelerden büyük şirketlere kadar her ölçekte kullanılabilir. Özellikle:

  • Satış ve pazarlama yönetimi
  • Muhasebe ve finansal raporlama
  • Envanter ve tedarik zinciri
  • İnsan kaynakları yönetimi
  • Proje yönetimi
  • E-ticaret platformu

Odoo’nun en büyük avantajı, tüm iş süreçlerini tek bir platformda birleştirmesi ve yüksek özelleştirilebilir olmasıdır.

 

1. Önceki Build’i Temizleyin

# Çalışan servisleri durdurun
sudo docker-compose down

# Docker cache'ini temizleyin
sudo docker system prune -f

2. Hazır Docker Compose Dosyasını Oluşturun

# docker-compose-nobuild.yml dosyasını oluşturun
nano docker-compose-nobuild.yml

Yukarıdaki docker-compose-nobuild.yml artifact’ının içeriğini kopyalayıp yapıştırın.

3. Addons Klasörü Oluşturun

# Özel modüller için addons klasörü oluşturun
mkdir -p addons

4. Odoo’yu Başlatın

# Hazır image ile başlatın
sudo docker-compose -f docker-compose-nobuild.yml up -d

5. Başlatma Sürecini İzleyin

# Logları izleyin (Ctrl+C ile çıkabilirsiniz)
sudo docker-compose -f docker-compose-nobuild.yml logs -f

Aşağıdaki gibi bir çıktı görmelisiniz:

odoo_1  | 2025-06-21 XX:XX:XX,XXX INFO ? odoo: Odoo version 17.0
odoo_1  | 2025-06-21 XX:XX:XX,XXX INFO ? odoo: addons paths: ...
odoo_1  | 2025-06-21 XX:XX:XX,XXX INFO ? odoo: database: ...

6. Tarayıcıda Açın

Loglar “HTTP service (werkzeug) running on” mesajını gösterdiğinde:

http://localhost:8069

7. İlk Kurulum

Tarayıcıda açıldığında şu adımları takip edin:

  1. Master Password: Güvenli bir şifre girin (örn: admin123)
  2. Database Name: myodoo
  3. Email: Admin email adresiniz
  4. Password: Admin kullanıcı şifresi
  5. Language: Turkish
  6. Country: Turkey
  7. Demo data: İsterseniz işaretleyin (örneklerle başlar)

Yararlı Komutlar

# Servisleri durdurmak
sudo docker-compose -f docker-compose-nobuild.yml down

# Servisleri yeniden başlatmak
sudo docker-compose -f docker-compose-nobuild.yml up -d

# Servis durumunu kontrol etmek
sudo docker-compose -f docker-compose-nobuild.yml ps

# Veritabanına bağlanmak
sudo docker-compose -f docker-compose-nobuild.yml exec db psql -U odoo postgres

Sorun Giderme

Eğer port 8069 kullanımdaysa:

# Hangi servislerin 8069 portunu kullandığını kontrol edin
sudo netstat -tlnp | grep 8069

# Gerekirse portu değiştirin (docker-compose dosyasında "8069:8069" → "8070:8069")

 

docker-compose-with-addons.yml

version: '3.8'

services:
  db:
    image: postgres:15
    environment:
      POSTGRES_DB: postgres
      POSTGRES_USER: odoo
      POSTGRES_PASSWORD: odoo
      PGDATA: /var/lib/postgresql/data/pgdata
    volumes:
      - postgres_data:/var/lib/postgresql/data/pgdata
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U odoo"]
      interval: 10s
      timeout: 5s
      retries: 5

  # Addons indirme servisi
  addons-downloader:
    image: alpine/git
    volumes:
      - ./addons:/addons
    command: >
      sh -c "
        cd /addons &&
        if [ ! -d 'muk_base' ]; then
          git clone https://github.com/muk-it/muk_base.git --branch 17.0 || git clone https://github.com/muk-it/muk_base.git;
        fi &&
        if [ ! -d 'muk_web' ]; then
          git clone https://github.com/muk-it/muk_web.git --branch 17.0 || git clone https://github.com/muk-it/muk_web.git;
        fi &&
        if [ ! -d 'muk_dms' ]; then
          git clone https://github.com/muk-it/muk_dms.git --branch 17.0 || git clone https://github.com/muk-it/muk_dms.git;
        fi
      "

  odoo:
    image: odoo:17.0
    depends_on:
      db:
        condition: service_healthy
      addons-downloader:
        condition: service_completed_successfully
    ports:
      - "8069:8069"
    environment:
      - HOST=db
      - USER=odoo
      - PASSWORD=odoo
    volumes:
      - odoo_data:/var/lib/odoo
      - ./addons:/mnt/extra-addons
    restart: unless-stopped
    command: ["odoo", "--addons-path=/mnt/extra-addons,/usr/lib/python3/dist-packages/odoo/addons"]

volumes:
  postgres_data:
  odoo_data:

docker-compose-nobuild.yml

version: '3.8'

services:
  db:
    image: postgres:15
    environment:
      POSTGRES_DB: postgres
      POSTGRES_USER: odoo
      POSTGRES_PASSWORD: odoo
      PGDATA: /var/lib/postgresql/data/pgdata
    volumes:
      - postgres_data:/var/lib/postgresql/data/pgdata
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U odoo"]
      interval: 10s
      timeout: 5s
      retries: 5

  odoo:
    image: odoo:17.0
    depends_on:
      db:
        condition: service_healthy
    ports:
      - "8069:8069"
    environment:
      - HOST=db
      - USER=odoo
      - PASSWORD=odoo
    volumes:
      - odoo_data:/var/lib/odoo
      - ./addons:/mnt/extra-addons
    restart: unless-stopped

volumes:
  postgres_data:
  odoo_data:

 

Yorum Yazın