অ্যান্ড্রয়েড

ওবুন্টু 18.04 এ ওডু 12 কীভাবে স্থাপন করা যায়

উবুন্টু 18.04 তে ODOO 12 ইনস্টল করুন কিভাবে

উবুন্টু 18.04 তে ODOO 12 ইনস্টল করুন কিভাবে

সুচিপত্র:

Anonim

ওডু হ'ল বিশ্বের সর্বাধিক জনপ্রিয় বিজনেস সফটওয়্যার। এটি সিআরএম, ওয়েবসাইট, ই-কমার্স, বিলিং, অ্যাকাউন্টিং, উত্পাদন, গুদাম, প্রকল্প পরিচালনা, ইনভেন্টরি এবং আরও অনেক কিছু সহ বিবিধ ব্যবসায়িক অ্যাপ্লিকেশন সরবরাহ করে, যা সম্পূর্ণ নির্বিঘ্নে সংহত করে।

Odoo বিভিন্ন উপায়ে ইনস্টল করা যেতে পারে। ওডু ইনস্টল করার সহজতম ও দ্রুততম উপায় হ'ল তাদের অফিসিয়াল এপিটি সংগ্রহস্থলগুলি ব্যবহার করে।

এই টিউটোরিয়ালটি উবুন্টু 18.04 সিস্টেমে গিট সোর্স এবং পাইথন ভার্চুয়াল পরিবেশ ব্যবহার করে উত্পাদনের জন্য ওডু 12 ইনস্টল ও কনফিগার করার জন্য প্রয়োজনীয় পদক্ষেপগুলি কভার করে।

তুমি শুরু করার আগে

উবুন্টু মেশিনটি আপনাকে একটি sudo ব্যবহারকারী হিসাবে লগইন করুন এবং সর্বশেষ প্যাকেজগুলিতে সিস্টেম আপডেট করুন:

sudo apt update && sudo apt upgrade

গিট, পিপ, নোড.জেএস এবং ওডু নির্ভরতা তৈরি করতে প্রয়োজনীয় সরঞ্জামগুলি ইনস্টল করুন:

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

ওডু ব্যবহারকারী তৈরি করুন

নীচের কমান্ডটি ব্যবহার করে হোম ডিরেক্টরি /opt/odoo12 সহ ওডু নামে odoo12 12 এর জন্য একটি নতুন সিস্টেম ব্যবহারকারী তৈরি করুন:

sudo useradd -m -d /opt/odoo12 -U -r -s /bin/bash odoo12 আপনি আপনার ওডু ব্যবহারকারীর জন্য যে কোনও নাম ব্যবহার করতে পারবেন যতক্ষণ না আপনি একই নামের সাথে পোস্টগ্রিজ এসকিউএল ব্যবহারকারী তৈরি করেন।

PostgreSQL ইনস্টল এবং কনফিগার করুন

উবুন্টুর ডিফল্ট সংগ্রহস্থলগুলি থেকে পোস্টগ্রাইএসকিউএল প্যাকেজ ইনস্টল করুন:

sudo apt install postgresql

ইনস্টলেশনটি শেষ হয়ে গেলে, পূর্বের তৈরি সিস্টেম ব্যবহারকারীর মতো একই নামে পোস্টগ্রিএসকিউএল ব্যবহারকারী তৈরি করুন, আমাদের ক্ষেত্রে odoo12 :

sudo su - postgres -c "createuser -s odoo12"

Wkhtmltopdf ইনস্টল করুন

wkhtmltox প্যাকেজটি ওপেন সোর্স কমান্ড লাইন সরঞ্জামগুলির একটি সেট সরবরাহ করে যা wkhtmltox এবং বিভিন্ন চিত্র ফর্ম্যাটে HTML সরবরাহ করতে পারে। পিডিএফ প্রতিবেদনগুলি মুদ্রণের জন্য, আপনার wkhtmltopdf সরঞ্জামের প্রয়োজন হবে। ওডুর প্রস্তাবিত সংস্করণটি 0.12.1 যা অফিসিয়াল উবুন্টু 18.04 সংগ্রহস্থলগুলিতে পাওয়া যায় না।

নিম্নলিখিত উইজেট কমান্ডটি ব্যবহার করে প্যাকেজটি ডাউনলোড করুন:

wget

ডাউনলোড শেষ হয়ে গেলে প্যাকেজটি টাইপ করে ইনস্টল করুন:

sudo apt install./wkhtmltox_0.12.1.3-1~bionic_amd64.deb

ওডু ইনস্টল করুন এবং কনফিগার করুন

আমরা বিচ্ছিন্ন পাইথন ভার্চুয়াল পরিবেশের ভিতরে গিটহাব সংগ্রহস্থল থেকে ওডু ইনস্টল করব।

ইনস্টলেশন প্রক্রিয়াটি শুরু করার আগে, ব্যবহারকারী "odoo12" এ পরিবর্তন করুন:

sudo su - odoo12

গিটহাব সংগ্রহশালা থেকে ওডু 12 উত্স কোডটি ক্লোনিং করে শুরু করুন:

git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 /opt/odoo12/odoo

উত্স কোডটি ডাউনলোড হয়ে গেলে, ওদু 12 ইনস্টলেশনটির জন্য একটি নতুন পাইথন ভার্চুয়াল পরিবেশ তৈরি করুন:

cd /opt/odoo12 python3 -m venv odoo-venv

এরপরে, নিম্নলিখিত কমান্ড সহ পরিবেশ সক্রিয় করুন:

source odoo-venv/bin/activate

পিপ 3 সহ সমস্ত প্রয়োজনীয় পাইথন মডিউল ইনস্টল করুন:

pip3 install wheel pip3 install -r odoo/requirements.txt ইনস্টলেশন চলাকালীন আপনার যদি কোনও সংকলনের ত্রুটি দেখা দেয় তবে নিশ্চিত হয়ে নিন যে Before you begin করার Before you begin বিভাগে তালিকাবদ্ধ সমস্ত প্রয়োজনীয় নির্ভরতা ইনস্টল করেছেন installed

নিম্নলিখিত কমান্ডটি ব্যবহার করে পরিবেশটি নিষ্ক্রিয় করুন:

deactivate

কাস্টম অ্যাডোনগুলির জন্য একটি নতুন ডিরেক্টরি তৈরি করুন:

mkdir /opt/odoo12/odoo-custom-addons

আপনার সুডো ব্যবহারকারীর কাছে ফিরে যান:

exit

এর পরে, অন্তর্ভুক্ত নমুনা কনফিগারেশন ফাইলটি অনুলিপি করে একটি কনফিগারেশন ফাইল তৈরি করুন:

sudo cp /opt/odoo12/odoo/debian/odoo.conf /etc/odoo12.conf

ফাইলটি খুলুন এবং নীচে এটি সম্পাদনা করুন:

sudo nano /etc/odoo12.conf /etc/odoo12.conf

; This is the password that allows database operations: admin_passwd = my_admin_passwd db_host = False db_port = False db_user = odoo12 db_password = False addons_path = /opt/odoo12/odoo/addons, /opt/odoo12/odoo-custom-addons my_admin_passwd আরও সুরক্ষিত কিছুতে পরিবর্তন করতে ভুলবেন না।

একটি সিস্টেমযুক্ত ইউনিট ফাইল তৈরি করুন

ওডুকে একটি পরিষেবা হিসাবে চালাতে আমাদের /etc/systemd/system/ ডিরেক্টরিতে একটি পরিষেবা ইউনিট ফাইল তৈরি করতে হবে।

আপনার পাঠ্য সম্পাদকটি খুলুন এবং নিম্নলিখিত কনফিগারেশনটি আটকে দিন:

sudo nano /etc/systemd/system/odoo12.service /etc/systemd/system/odoo12.service

Description=Odoo12 Requires=postgresql.service After=network.target postgresql.service Type=simple SyslogIdentifier=odoo12 PermissionsStartOnly=true User=odoo12 Group=odoo12 ExecStart=/opt/odoo12/odoo-venv/bin/python3 /opt/odoo12/odoo/odoo-bin -c /etc/odoo12.conf StandardOutput=journal+console WantedBy=multi-user.target

সিস্টেমে অবহিত করুন যে একটি নতুন ইউনিট ফাইল উপস্থিত রয়েছে এবং চালিয়ে ওডু পরিষেবা শুরু করুন:

sudo systemctl daemon-reload sudo systemctl start odoo12

নিম্নলিখিত কমান্ড সহ পরিষেবার স্থিতি পরীক্ষা করুন:

sudo systemctl status odoo12

আউটপুট নীচের মতো দেখতে হবে যা ইঙ্গিত করে যে ওডু পরিষেবাটি সক্রিয় এবং চলছে running

* odoo12.service - Odoo12 Loaded: loaded (/etc/systemd/system/odoo12.service; disabled; vendor preset: enabled) Active: active (running) since Tue 2018-10-09 14:15:30 PDT; 3s ago Main PID: 24334 (python3) Tasks: 4 (limit: 2319) CGroup: /system.slice/odoo12.service `-24334 /opt/odoo12/odoo-venv/bin/python3 /opt/odoo12/odoo/odoo-bin -c /etc/odoo12.conf

ওডু পরিষেবাটি বুট সময়ে স্বয়ংক্রিয়ভাবে শুরু হওয়ার জন্য সক্ষম করুন:

sudo systemctl enable odoo12

sudo journalctl -u odoo12

ইনস্টলেশন পরীক্ষা করুন

আপনার ব্রাউজারটি খুলুন এবং টাইপ করুন: http://:8069 http://:8069

ইনস্টলেশনটি সফল বলে ধরে নিলে, নিম্নলিখিতগুলির মতো একটি পর্দা উপস্থিত হবে:

এনজিএনএক্সকে এসএসএল টার্মিনেশন প্রক্সি হিসাবে কনফিগার করুন

নিশ্চিত হয়ে নিন যে আপনি এই বিভাগটি চালিয়ে যাওয়ার আগে নিম্নলিখিত শর্তগুলি পূরণ করেছেন:

  • আপনার সার্বজনীন সার্ভার আইপি-তে ইঙ্গিত করে ডোমেন নাম। এই টিউটোরিয়ালে আমরা উদাহরণ.কম.Nginx ইনস্টলড ব্যবহার করব your আপনি একটি বিনামূল্যে চলুন এনক্রিপ্ট এসএসএল শংসাপত্র ইনস্টল করতে পারেন।

ডিফল্ট ওডু ওয়েব সার্ভার HTTP- র মাধ্যমে ট্র্যাফিক সরবরাহ করে serving আমাদের ওডু মোতায়েনকে আরও সুরক্ষিত করতে আমরা এনগিনেক্সকে একটি এসএসএল সমাপ্তি প্রক্সি হিসাবে কনফিগার করব যা এইচটিটিপিএসের মাধ্যমে ট্র্যাফিক সরবরাহ করবে।

এসএসএল সমাপ্তি প্রক্সি হ'ল একটি প্রক্সি সার্ভার যা এসএসএল এনক্রিপশন / ডিক্রিপশন পরিচালনা করে। এর অর্থ হ'ল আমাদের টার্মিনেশন প্রক্সি (এনগিনেক্স) আগত টিএলএস সংযোগগুলি (এইচটিটিপিএস) হ্যান্ডেল এবং ডিক্রিপ্ট করবে এবং এটি আমাদের অভ্যন্তরীণ পরিষেবা (ওডু) এ এনক্রিপ্ট করা অনুরোধগুলি পাস করবে যাতে এনগিনেক্স এবং ওদুর মধ্যে ট্র্যাফিক এনক্রিপ্ট করা হবে না।

বিপরীত প্রক্সি ব্যবহার করে আপনাকে অনেকগুলি সুবিধা দেয় যেমন লোড ব্যালেন্সিং, এসএসএল টার্মিনেশন, ক্যাশিং, কম্প্রেশন, স্ট্যাটিক সামগ্রী সরবরাহ করা এবং আরও অনেক কিছু।

এই উদাহরণে আমরা এসএসএল টার্মিনেশন, এইচটিটিপি থেকে এইচটিটিপিএস পুনঃনির্দেশ, ডাব্লুডাব্লুডাব্লু থেকে নন-ডাব্লুডাব্লু পুনঃনির্দেশ, স্ট্যাটিক ফাইলগুলি ক্যাশে এবং জিজেপ সংক্ষেপণ সক্ষম করব।

আপনার পাঠ্য সম্পাদকটি খুলুন এবং নিম্নলিখিত ফাইলটি তৈরি করুন:

sudo nano /etc/nginx/sites-enabled/example.com /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 প্রতিস্থাপন এবং এসএসএল শংসাপত্র ফাইলগুলির সঠিক পথ নির্ধারণ করতে ভুলবেন না। এই কনফিগারেশনে ব্যবহৃত স্নিপেটগুলি এই গাইডটিতে তৈরি করা হয়েছে।

আপনার কাজ শেষ হয়ে গেলে, এনগিনেক্স পরিষেবাটি এর সাথে পুনরায় চালু করুন:

sudo systemctl restart nginx

এর পরে, আমাদের ওডুকে জানাতে হবে যে আমরা প্রক্সি ব্যবহার করব। এটি করতে কনফিগারেশন ফাইলটি খুলুন এবং নিম্নলিখিত লাইনটি যুক্ত করুন:

/etc/odoo12.conf

proxy_mode = True

পরিবর্তনগুলি কার্যকর করতে ওডু পরিষেবাটি পুনরায় চালু করুন:

sudo systemctl restart odoo12

এই মুহুর্তে, আপনার সার্ভারটি কনফিগার করা আছে এবং আপনি নিজের ওডু উদাহরণটি এখানে https://example.com অ্যাক্সেস করতে পারেন

বাইন্ডিং ইন্টারফেস পরিবর্তন করুন

এই পদক্ষেপটি alচ্ছিক, তবে এটি একটি ভাল সুরক্ষা অনুশীলন।

ডিফল্টরূপে, ওডু সার্ভার সমস্ত ইন্টারফেসে 8069 পোর্ট শোনে। আপনি যদি নিজের ওডু উদাহরণটিতে সরাসরি অ্যাক্সেস অক্ষম করতে চান তবে আপনি সমস্ত পাবলিক ইন্টারফেসের জন্য 8069 বন্দরটি ব্লক করতে পারেন বা ওডুকে কেবল স্থানীয় ইন্টারফেসে শুনতে বাধ্য করতে পারেন।

এই গাইডে আমরা কেবল 127.0.0.1 শুনতে ওডুকে কনফিগার করব। কনফিগারেশনটি খুলুন ফাইলের শেষে নিম্নলিখিত দুটি লাইন যুক্ত করুন:

/etc/odoo12.conf

xmlrpc_interface = 127.0.0.1 netrpc_interface = 127.0.0.1

পরিবর্তনগুলি কার্যকর করার জন্য কনফিগারেশন ফাইলটি সংরক্ষণ করুন এবং ওডু সার্ভারটি পুনরায় চালু করুন:

sudo systemctl restart odoo12

মাল্টিপ্রসেসিং সক্ষম করুন

ডিফল্টরূপে, ওডু মাল্টিথ্রেডিং মোডে কাজ করছে। উত্পাদন মোতায়েনের জন্য, মাল্টিপ্রসেসিং সার্ভারে স্যুইচ করার পরামর্শ দেওয়া হয় কারণ এটি স্থিতিশীলতা বৃদ্ধি করে এবং সিস্টেম সংস্থানগুলির আরও ভাল ব্যবহার করে। মাল্টিপ্রসেসিং সক্ষম করার জন্য আমাদের ওডু কনফিগারেশনটি সম্পাদনা করতে হবে এবং অ-শূন্য সংখ্যক কর্মী প্রক্রিয়া নির্ধারণ করতে হবে।

সিস্টেমে সিপিইউ কোর সংখ্যা এবং উপলব্ধ র‌্যাম মেমরির ভিত্তিতে কর্মীদের সংখ্যা গণনা করা হয়।

কর্মীদের সংখ্যা এবং প্রয়োজনীয় র‌্যাম মেমরির আকার গণনা করতে অফিসিয়াল ওডু ডকুমেন্টেশন অনুসারে আমরা নিম্নলিখিত সূত্রগুলি এবং অনুমানগুলি ব্যবহার করব:

কর্মী সংখ্যা গণনা

  • তাত্ত্বিক সর্বাধিক সংখ্যক কর্মী = (system_cpus * 2) + ১১ জন কর্মী can = conc সহবর্তী ব্যবহারকারী পরিবেশন করতে পারেন ক্রোন কর্মীদের সিপিইউ প্রয়োজন

র‌্যাম মেমরি সাইজের গণনা

  • আমরা বিবেচনা করব যে সমস্ত অনুরোধগুলির 20% হ'ল ভারী অনুরোধ, যখন ৮০% হালকা হয়। ভারী অনুরোধগুলি প্রায় 1 গিগাবাইট র‌্যাম ব্যবহার করছে যখন হালকারা প্রায় 150 এমবি র‌্যামনিডেড র‌্যাম ব্যবহার করছে = number_of_workers * ((light_worker_ratio * light_worker_ram_estimation) + (heavy_worker_ratio * heavy_worker_ram_estimation))

grep -c ^processor /proc/cpuinfo

ধরা যাক আমাদের 4 টি সিপিইউ কোর, 8 গিগাবাইট র‌্যাম মেমরি এবং 30 সমবর্তী ওডু ব্যবহারকারী রয়েছে system

  • 30 users / 6 = **5** (5 প্রয়োজনীয় শ্রমিকের তাত্ত্বিক সংখ্যা) (4 * 2) + 1 = **9** (9 তাত্ত্বিক সর্বাধিক কর্মীদের সংখ্যা)

উপরের গণনার ভিত্তিতে আমরা ক্রোন শ্রমিকের জন্য 5 জন কর্মী + 1 কর্মী ব্যবহার করতে পারি যা মোট 6 জন কর্মী।

কর্মীদের সংখ্যার ভিত্তিতে র‌্যাম মেমরির খরচ গণনা করুন:

  • RAM = 6 * ((0.8*150) + (0.2*1024)) ~= 2 GB of RAM

উপরের গণনাটি আমাদের দেখায় যে আমাদের ওডু ইনস্টলেশনটির জন্য প্রায় 2 জিবি র‌্যামের প্রয়োজন হবে।

মাল্টিপ্রসেসিং মোডে স্যুইচ করতে, কনফিগারেশন ফাইলটি খুলুন এবং নিম্নলিখিত লাইনগুলি যুক্ত করুন:

/etc/odoo12.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

পরিবর্তনগুলি কার্যকর করতে ওডু পরিষেবাটি পুনরায় চালু করুন:

sudo systemctl restart odoo12

সিস্টেমের বাকী রিসোর্সগুলি এই সিস্টেমে চালিত অন্যান্য পরিষেবাদি দ্বারা ব্যবহৃত হবে। এই গাইডে আমরা পোস্টগ্র্রেএসকিউএল এবং এনগিনেক্সের সাথে ওডু একই সার্ভারে ইনস্টল করেছি এবং আপনার সেটআপের উপর নির্ভর করে আপনার সার্ভারে অন্যান্য পরিষেবাও চলতে পারে।

উপসংহার

এই টিউটোরিয়ালটি উলগুন প্রক্সি হিসাবে Nginx ব্যবহার করে পাইথন ভার্চুয়াল পরিবেশে উবুন্টু 18.04 এ ওডু 12 স্থাপনের মাধ্যমে আপনাকে অনুসরণ করেছিল। আপনি কীভাবে মাল্টিপ্রসেসিং সক্ষম করতে এবং উত্পাদন পরিবেশের জন্য ওডুকে অনুকূল করতে পারবেন তাও শিখেছি।

আপনি কীভাবে আপনার ওডু ডাটাবেসের স্বয়ংক্রিয় দৈনিক ব্যাকআপ তৈরি করবেন সে সম্পর্কে আমাদের টিউটোরিয়ালটি পরীক্ষা করতে চাইতে পারেন।

উবুন্টু ওডো পোস্টগ্র্যাসকিএল পাইথন পিপ এনজিনেক্স প্রক্সি এসএসএল