How To Install Odoo 13 on Ubuntu 18.04
İçindekiler:
- Önkoşulları Yükleme
- Sistem Kullanıcısı Oluşturma
- PostgreSQL'i Kurma ve Yapılandırma
- Wkhtmltopdf Kurulumu
- Odoo'yu Kurma ve Yapılandırma 13
- Systemd Birim Dosyası Oluşturma
- Kurulumu Test Etme
- Nginx'i SSL Sonlandırma Proxy'si olarak yapılandırma
- Ciltleme Arayüzünü Değiştirme
- Çok İşlemciliğin Etkinleştirilmesi
- Sonuç
Odoo, popüler bir açık kaynaklı iş uygulamaları paketidir. CRM, e-Ticaret, web sitesi oluşturucu, faturalandırma, muhasebe, üretim, depo, proje yönetimi, envanter ve çok daha fazlası dahil olmak üzere hepsi sorunsuz bir şekilde entegre edilmiş bir dizi uygulama sunar.
Odoo, kullanım durumuna ve mevcut teknolojilere bağlı olarak çeşitli şekillerde kurulabilir. Odoo'yu kurmanın en kolay ve en hızlı yolu resmi Odoo APT depolarını kullanmaktır.
Odoo'yu sanal bir ortama kurmak veya bir Docker kapsayıcısı olarak dağıtmak, sistemin kurulumu üzerinde daha fazla kontrole sahip olmanıza ve aynı sistemde birden fazla Odoo sürümü çalıştırmanıza olanak tanır.
Bu kılavuzda, Ubuntu 18.04'te bir Python sanal ortamına Odoo 13'ü kurarak ve dağıtarak size yol göstereceğiz. Odoo'yu Github veri havuzundan indireceğiz ve Nginx'i ters proxy olarak kullanacağız.
Önkoşulları Yükleme
Bir sudo kullanıcısı olarak Ubuntu'nuza giriş yapın ve Apt önbelleğini güncelleyin:
sudo apt update
Git, Pip, Node.js ve Odoo bağımlılıkları oluşturmak için gerekli araçları yükleyin:
sudo apt install git python3-pip build-essential wget python3-dev python3-venv python3-wheel libxslt-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less
Sistem Kullanıcısı Oluşturma
Ana dizin
/opt/odoo13
ile odoo13 adlı
odoo13
çalıştıracak bir sistem kullanıcısı oluşturun:
sudo useradd -m -d /opt/odoo13 -U -r -s /bin/bash odoo13
Aynı ada sahip bir PostgreSQL kullanıcısı oluşturduğunuz sürece kullanıcının adını istediğiniz herhangi bir şeye ayarlayabilirsiniz.
PostgreSQL'i Kurma ve Yapılandırma
Odoo, veritabanı arka ucu olarak PostgreSQL kullanır. PostgreSQL'i kurmak için aşağıdaki komutu çalıştırın:
sudo apt install postgresql
Yükleme tamamlandıktan sonra, önceden oluşturulmuş sistem kullanıcısıyla aynı ada sahip bir PostgreSQL kullanıcısı oluşturun, bizim durumumuzda
odoo13
:
sudo su - postgres -c "createuser -s odoo13"
Wkhtmltopdf Kurulumu
wkhtmltox
paketi, HTML'yi PDF'ye ve çeşitli görüntü formatlarına dönüştürebilen bir dizi açık kaynaklı komut satırı aracı sağlar. PDF raporlarını yazdırabilmek için
wkhtmltopdf
aracını yüklemeniz gerekir. Odoo için önerilen sürüm, varsayılan Ubuntu 18.04 depolarında bulunmayan
0.12.5
.
Aşağıdaki wget komutunu kullanarak paketi indirin:
wget
İndirme işlemi tamamlandıktan sonra, paketi şunu yazarak yükleyin:
sudo apt install./wkhtmltox_0.12.5-1.bionic_amd64.deb
Odoo'yu Kurma ve Yapılandırma 13
Daha önce de belirtildiği gibi, Odoo'yu kaynaktan izole bir Python sanal ortamı içine kuracağız.
İlk olarak, “odoo13” kullanıcısına değiştirin:
sudo su - odoo13
GitHub'dan Odoo 13 kaynak kodunu kopyalayın:
git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 /opt/odoo13/odoo
İndirme işlemi tamamlandıktan sonra Odoo için yeni bir Python sanal ortamı oluşturun:
cd /opt/odoo13
python3 -m venv odoo-venv
Aşağıdaki komutla ortamı etkinleştirin:
source odoo-venv/bin/activate
Gerekli tüm Python modüllerini pip3 ile kurun:
pip3 install wheel
pip3 install -r odoo/requirements.txt
Yükleme sırasında herhangi bir derleme hatasıyla karşılaşırsanız,
Installing Prerequisites
bölümünde listelenen tüm bağımlılıkların yüklendiğinden emin olun.
Bittiğinde, şunu yazarak ortamı devre dışı bırakın:
deactivate
Üçüncü taraf eklentilerini barındıracak yeni bir dizin oluşturacağız.
mkdir /opt/odoo13/odoo-custom-addons
Daha sonra bu dizini
addons_path
parametresine
addons_path
. Bu parametre, Odoo'nun modülleri aradığı dizinlerin bir listesini tanımlar.
Sudo kullanıcınıza geri dönün:
exit
Aşağıdaki içeriğe sahip bir yapılandırma dosyası oluşturun:
sudo nano /etc/odoo13.conf
/etc/odoo13.conf
; This is the password that allows database operations: admin_passwd = my_admin_passwd db_host = False db_port = False db_user = odoo13 db_password = False addons_path = /opt/odoo13/odoo/addons, /opt/odoo13/odoo-custom-addons
my_admin_passwd
daha güvenli bir şeye değiştirmeyi unutmayın.
Systemd Birim Dosyası Oluşturma
Metin düzenleyicinizi açın ve aşağıdaki içeriğe sahip
odoo13.service
adlı bir hizmet birimi dosyası oluşturun:
sudo nano /etc/systemd/system/odoo13.service
/etc/systemd/system/odoo13.service
Description=Odoo13 Requires=postgresql.service After=network.target postgresql.service Type=simple SyslogIdentifier=odoo13 PermissionsStartOnly=true User=odoo13 Group=odoo13 ExecStart=/opt/odoo13/odoo-venv/bin/python3 /opt/odoo13/odoo/odoo-bin -c /etc/odoo13.conf StandardOutput=journal+console WantedBy=multi-user.target
Systemd'e yeni bir birim dosyasının bulunduğunu bildirin:
sudo systemctl daemon-reload
Odoo hizmetini başlatın ve çalıştırarak önyüklemede başlamasını sağlayın:
sudo systemctl enable --now odoo13
Servis durumunu doğrulayın:
sudo systemctl status odoo13
Çıktı, Odoo hizmetinin etkin ve çalışır durumda olduğunu gösteren aşağıdaki gibi görünmelidir.
● odoo13.service Loaded: loaded (/etc/systemd/system/odoo13.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2019-10-19 20:06:23 UTC; 3s ago Main PID: 1860 (python3) Tasks: 4 (limit: 2362) CGroup: /system.slice/odoo13.service └─1860 /opt/odoo13/odoo-venv/bin/python3 /opt/odoo13/odoo/odoo-bin -c /etc/odoo13.conf
Odoo hizmeti tarafından günlüğe kaydedilen iletileri görmek için aşağıdaki komutu kullanın:
Kurulumu Test Etme
Tarayıcınızı açın ve
http://:8069
http://:8069
Kurulumun başarılı olduğu varsayıldığında, aşağıdakine benzer bir ekran görünecektir:

Nginx'i SSL Sonlandırma Proxy'si olarak yapılandırma
Varsayılan Odoo web sunucusu HTTP üzerinden trafik yayınlıyor. Odoo dağıtımını daha güvenli hale getirmek için, Nginx'i HTTPS üzerinden trafiği sunacak bir SSL sonlandırma proxy'si olarak yapılandıracağız.
SSL sonlandırma proxy'si, SSL şifrelemesini / şifresini çözen bir proxy sunucusudur. Bu, sonlandırma proxy'sinin (Nginx) gelen TLS bağlantılarını (HTTPS) işleyip şifresini çözeceği ve şifrelenmemiş istekleri dahili hizmete (Odoo) ileteceği anlamına gelir. Nginx ve Odoo arasındaki trafik şifrelenmeyecek (HTTP).
Ters proxy kullanmak, Yük Dengeleme, SSL Sonlandırma, Önbellekleme, Sıkıştırma, Statik İçerik Sunma ve daha pek çok avantaj sağlar.
Bu bölüme devam etmeden önce aşağıdaki önkoşulları karşıladığınızdan emin olun:
- Genel sunucu IP'nizi gösteren alan adı. Alan adınız için
example.com.Nginx yüklü.SSL sertifikasını kullanacağız. Ücretsiz Let's Encrypt SSL sertifikası yükleyebilirsiniz.
Metin düzenleyicinizi açın ve alan adı sunucusu bloğunu oluşturun / düzenleyin:
sudo nano /etc/nginx/sites-enabled/example.com
Aşağıdaki yapılandırma SSL Sonlandırmayı, HTTP'den HTTPS'ye yeniden yönlendirmeyi, WWW'den WWW'ye olmayan yeniden yönlendirmeyi ayarlar, statik dosyaları önbelleğe alır ve GZip sıkıştırmasını etkinleştirir.
/etc/nginx/sites-enabled/example.com
# Odoo servers upstream odoo { server 127.0.0.1:8069; } upstream odoochat { server 127.0.0.1:8072; } # HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; # Proxy headers proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; # log files access_log /var/log/nginx/odoo.access.log; error_log /var/log/nginx/odoo.error.log; # Handle longpoll requests location /longpolling { proxy_pass http://odoochat; } # Handle / requests location / { proxy_redirect off; proxy_pass http://odoo; } # Cache static files location ~* /web/static/ { proxy_cache_valid 200 90m; proxy_buffering on; expires 864000; proxy_pass http://odoo; } # Gzip gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript; gzip on; }
Example.com'u Odoo alan adınızla değiştirmeyi ve SSL sertifika dosyalarına doğru yolu ayarlamayı unutmayın. Bu yapılandırmada kullanılan snippet'ler bu kılavuzda oluşturulur.
İşiniz bittiğinde, Nginx hizmetini yeniden başlatın:
sudo systemctl restart nginx
Sonra, Odoo'ya proxy'yi kullanmasını söylemeliyiz. Bunu yapmak için yapılandırma dosyasını açın ve aşağıdaki satırı ekleyin:
/etc/odoo13.conf
proxy_mode = True
Değişikliklerin geçerli olması için Odoo hizmetini yeniden başlatın:
sudo systemctl restart odoo13
Bu noktada, ters proxy yapılandırılır ve Odoo örneğinize şu adresten erişebilirsiniz:
https://example.com
Ciltleme Arayüzünü Değiştirme
Bu adım isteğe bağlıdır, ancak iyi bir güvenlik uygulamasıdır.
Varsayılan olarak, Odoo sunucusu tüm arabirimlerde
8069
numaralı bağlantı noktasını dinler. Odoo örneğine doğrudan erişimi devre dışı bırakmak için,
8069
bağlantı noktasını tüm ortak arabirimler için engelleyebilir veya Odoo'yu yalnızca yerel arabirimde dinlemeye zorlayabilirsiniz.
Odoo'yu yalnızca
127.0.0.1
dinleyecek şekilde yapılandıracağız. Yapılandırmayı açın, dosyanın sonuna aşağıdaki iki satırı ekleyin:
xmlrpc_interface = 127.0.0.1 netrpc_interface = 127.0.0.1
Yapılandırma dosyasını kaydedin ve değişikliklerin geçerli olması için Odoo sunucusunu yeniden başlatın:
Çok İşlemciliğin Etkinleştirilmesi
Varsayılan olarak, Odoo çoklu kullanım modunda çalışır. Üretim dağıtımları için, kararlılığı artırdığı ve sistem kaynaklarını daha iyi kullanabildiği için çok işlemcili sunucuya geçmeniz önerilir.
Çoklu işlemeyi etkinleştirmek için Odoo yapılandırmasını düzenlemeniz ve sıfırdan farklı çalışan işlemi ayarlamanız gerekir. Çalışan sayısı, sistemdeki CPU çekirdeklerinin sayısına ve kullanılabilir RAM belleğine göre hesaplanır.
Çalışan sayısını ve gerekli RAM bellek boyutunu hesaplamak için resmi Odoo belgelerine göre, aşağıdaki formülleri ve varsayımları kullanabilirsiniz:
İşçi numarası hesaplama
- Teorik azami işçi sayısı = (system_cpus * 2) + 11 işçi ~ = 6 eşzamanlı kullanıcıya hizmet verebilir
RAM bellek boyutu hesaplama
- Tüm taleplerin% 20'sinin ağır talepler olduğunu ve% 80'inin daha hafif talepler olduğunu düşüneceğiz. Ağır istekler yaklaşık 1 GB RAM kullanıyor, daha hafif olanlar ise yaklaşık 150 MB RAM kullanıyor
grep -c ^processor /proc/cpuinfo
Diyelim ki 4 CPU çekirdeği, 8 GB RAM belleği ve 30 eşzamanlı Odoo kullanıcısı var.
-
30 users / 6 = **5**(5 teorik işçi sayısı gereklidir)(4 * 2) + 1 = **9**(9 teorik maksimum işçi sayısı)
Yukarıdaki hesaplamaya dayanarak, toplam 6 işçi olan cron işçisi için 5 işçi + 1 işçi kullanabilirsiniz.
RAM bellek tüketimini çalışan sayısına göre hesaplayın:
-
RAM = 6 * ((0.8*150) + (0.2*1024)) ~= 2 GB of RAM
Hesaplama, Odoo kurulumunun yaklaşık 2GB RAM'e ihtiyacı olacağını gösteriyor.
Çoklu işlem moduna geçmek için yapılandırma dosyasını açın ve hesaplanan değerleri ekleyin:
/etc/odoo13.conf
limit_memory_hard = 2684354560 limit_memory_soft = 2147483648 limit_request = 8192 limit_time_cpu = 600 limit_time_real = 1200 max_cron_threads = 1 workers = 5
Değişikliklerin geçerli olması için Odoo hizmetini yeniden başlatın:
sudo systemctl restart odoo13
Sistem kaynaklarının geri kalanı, bu sistemde çalışan diğer hizmetler tarafından kullanılacaktır. Bu kılavuzda, Odoo'yu PostgreSQL ve Nginx ile birlikte aynı sunucuya kurduk. Kurulumunuza bağlı olarak, sunucunuzda çalışan başka hizmetler de olabilir.
Sonuç
Bu eğitim, Nginx'i ters proxy olarak kullanan bir Python sanal ortamında Ubuntu 18.04 üzerine Odoo 13 kurulumunda size yol gösterdi. Ayrıca, bir üretim ortamı için çoklu işlemeyi nasıl etkinleştireceğinizi ve Odoo'yu nasıl optimize edeceğinizi gösterdik.
Ayrıca, Odoo veritabanlarının otomatik günlük yedeklemelerinin nasıl oluşturulacağı ile ilgili eğiticimizi kontrol etmek isteyebilirsiniz.
ubuntu odoo postgresql python pip nginx proxy sslUbuntu 18.04 Üzerine Anaconda Kurulumu
Anaconda, büyük ölçekli veri işleme, tahmine dayalı analitik ve bilimsel hesaplama için kullanılan en popüler python veri bilimi ve makine öğrenim platformudur. Bu eğitici, Ubuntu 18.04'te Anaconda Python Dağıtımını indirme ve yükleme adımları konusunda size rehberlik edecektir.
Ubuntu 18.04 Üzerine Redmine Kurulumu ve Konfigürasyonu
Redmine, en popüler açık kaynaklı proje yönetimi ve sorun izleme yazılım araçlarından biridir. Bu öğreticide, Ubuntu 18.04 sunucusuna Redmine'ın en son sürümünün nasıl yükleneceği ve yapılandırılacağı açıklanmaktadır.
Ubuntu 16.04 Üzerine Odoo 11 Kurulumu
Odoo, dünyanın en popüler iş yazılımlarından biridir. Bu kılavuz, Ubuntu 16.04'te Git kaynağı ve Python sanal ortamını kullanarak Odoo'yu kurmak ve yapılandırmak için gerekli adımları kapsar







