প্রকল্প সম্পর্কে
এটি একটি Docker পরিবেশ যা EC-CUBE 4-কে ডেভেলপমেন্ট এবং প্রোডাকশন উভয় পরিবেশে একই কনফিগারেশনে পরিচালনা করতে সক্ষম। git clone এবং bin/init.sh-এর মাধ্যমে ডেভেলপমেন্ট পরিবেশ চালু করা যায় এবং bin/publish.sh-এর মাধ্যমে প্রোডাকশনে পাবলিশ করা যায়। VPS বা AWS—যেকোনো প্ল্যাটফর্মে একই পদ্ধতিতে এটি স্থাপন করা সম্ভব।
ডিজাইন পলিসি অনুযায়ী, EC-CUBE-এর মূল অংশটি Docker ইমেজে বেক করা হয়েছে (composer create-project-এর মাধ্যমে প্রাপ্ত) এবং এটি রিপোজিটরিতে অন্তর্ভুক্ত করা হয়নি। ভার্সন পরিবর্তনের জন্য ইমেজ পুনরায় বিল্ড করতে হয়। শুধুমাত্র নিজস্ব কোডগুলো Git দ্বারা পরিচালিত হয় এবং app/Customize, app/template, app/DoctrineMigrations, app/Plugin, html/user_data-এর মতো প্রয়োজনীয় ডিরেক্টরিগুলো bind-mount-এর মাধ্যমে ওভারলে করা হয়। আপলোড করা ছবিগুলো একটি ডেডিকেটেড ভলিউমে (NFS/EFS দ্বারা প্রতিস্থাপনযোগ্য) সংরক্ষণ করা হয়।
compose.yaml-এর ওপর ভিত্তি করে ডেভেলপমেন্টের জন্য override, প্রোডাকশনের জন্য এবং মাল্টি-হোস্টের জন্য শুধুমাত্র app লেয়ারের কনফিগারেশন প্রস্তুত করা হয়েছে। DB হিসেবে MariaDB/MySQL অথবা PostgreSQL নির্বাচন করা সম্ভব। PHP-এর জন্য ডিস্ট্রিবিউশন ইমেজের ট্যাগ ব্যবহার করা হয় এবং প্রতি সপ্তাহে প্যাচ আপডেট করা হয়। এটি amd64 এবং arm64 উভয় আর্কিটেকচার সমর্থন করে।
ডেভেলপমেন্ট পরিবেশে Mailpit এবং phpMyAdmin ব্যবহার করা সম্ভব। bin/ ডিরেক্টরিতে deploy, console, shell, plugin, test, backup, restore-এর মতো অপারেশনাল স্ক্রিপ্ট দেওয়া হয়েছে। কন্টেইনারের ভেতরের কমান্ডগুলো নির্দিষ্টভাবে www-data ইউজার হিসেবে চালানো হয়, যাতে রুট পারমিশনের কারণে ফাইল তৈরি হয়ে 500 এরর আসা প্রতিরোধ করা যায়। docs/ ডিরেক্টরিতে ইনস্টলেশন, কাস্টমাইজেশন, ভার্সন আপগ্রেড, ডেপ্লয়মেন্ট, ব্যাকআপ, স্কেলিং, মনিটরিং, টেস্টিং এবং IDE সেটিংস সংক্রান্ত ডকুমেন্টগুলো আলাদাভাবে সাজানো আছে।
লাইসেন্সটি হলো Apache License 2.0 (শুধুমাত্র রিপোজিটরি ফাইলের জন্য)। EC-CUBE-এর মূল অংশের জন্য আলাদা লাইসেন্স (GPL/Commercial dual license) প্রযোজ্য হবে।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.