আপনার Node.js, PM2, VNC, এবং Xvfb সেটআপ হয়ে গেছে, এবং আপনি এখন জানতে চান কিভাবে Puppeteer স্ক্রিপ্ট চালাতে হবে যাতে এটি ব্রাউজার ওপেন করে এবং VNC দিয়ে আপনি তা দেখতে পারবেন।
ধাপে ধাপে নির্দেশনা:
✅ Step 1: Puppeteer স্ক্রিপ্টটি রান করা
- প্রথমে স্ক্রিপ্টের ফাইলগুলো ইনস্টল করুন: আপনার
package.jsonএবংpackage-lock.jsonফাইল রয়েছে, সেগুলোর মাধ্যমে ডিপেনডেন্সি ইনস্টল করুন। আপনি Puppeteer সহ সকল প্যাকেজগুলো ইনস্টল করতে পারবেন এই কমান্ড দিয়ে:npm installএই কমান্ডটি puppeteer এবং exceljs প্যাকেজগুলো ইনস্টল করবে।
✅ Step 2: Xvfb চালিয়ে Puppeteer স্ক্রিপ্ট রান করা
- Xvfb নিশ্চিত করুন যে এটি চালু রয়েছে, এবং তারপর Puppeteer স্ক্রিপ্ট চালানোর জন্য VNC থেকে আপনি সেটি দেখতে পারবেন। xvfb-run এর মাধ্যমে স্ক্রিপ্ট চালানোর জন্য নিচের কমান্ড ব্যবহার করুন:
xvfb-run -a node index.jsএখানে:xvfb-run -aদিয়ে Xvfb চালু হবে, যা GUI ব্রাউজার রেন্ডার করার জন্য প্রয়োজন।node index.jsআপনার Puppeteer স্ক্রিপ্ট চালু করবে।
- আপনি ব্রাউজার দেখতে পাবেন, কারণ স্ক্রিপ্টে headless: false সেট করা হয়েছে (যা আপনি চাইছিলেন, যাতে আপনি ব্রাউজার দেখতে পারেন)।
✅ Step 3: PM2 দিয়ে স্ক্রিপ্ট ২৪/৭ চালানো
আপনি যদি চান যে আপনার স্ক্রিপ্ট ২৪/৭ চলে এবং যদি স্ক্রিপ্ট কোনও কারণে বন্ধ হয়ে যায়, তাহলে PM2 দিয়ে এটি অটোমেটিক্যালি রিস্টার্ট করানো যাবে।
- PM2 দিয়ে স্ক্রিপ্ট চালানোর জন্য:
pm2 start "xvfb-run -a node index.js" --name puppeteer-bot - PM2 অটোমেটিক রিস্টার্ট সেটআপ করতে: প্রথমে PM2 সেভ করুন:
pm2 save - PM2 স্টার্টআপ স্ক্রিপ্ট তৈরি করুন:
pm2 startupএর পর আপনি একটি কমান্ড পাবেন, সেটা কপি করে রান করুন। এর মাধ্যমে PM2 সার্ভার রিবুটের পরও চালু থাকবে।
✅ Step 4: VNC দিয়ে ব্রাউজার দেখুন
- VNC Viewer দিয়ে সংযোগ করুন:
- আপনার VPS IP এবং VNC Display Port ব্যবহার করে VNC Viewer দিয়ে সংযোগ করুন।
- উদাহরণ:
217.65.145.29:1
- আপনি যখন VNC Viewer দিয়ে লগইন করবেন, তখন আপনি Puppeteer স্ক্রিপ্ট দ্বারা চালু করা Chromium বা Google Chrome ব্রাউজার দেখতে পারবেন।
✅ Step 5: ভেরিফাই করা
- আপনি VNC এর মাধ্যমে যে Puppeteer স্ক্রিপ্ট চালাচ্ছেন, সেটি ব্রাউজার ওপেন করছে কিনা তা যাচাই করুন।
- স্ক্রিপ্টে উল্লেখ করা 13:00, 17:00, এবং 21:00 ফেজগুলি সঠিকভাবে চলছে কিনা তা দেখুন। আপনির স্ক্রিপ্ট phase_status.json ফাইল দিয়ে ট্র্যাক করছে যে কোন সময় কোন ফেজ চলছে।
✅ Troubleshooting
- ব্রাউজার যদি দেখতে না পান:
- headless: false রয়েছে কিনা চেক করুন।
- যদি স্ক্রিপ্টে headless: true থাকে, তবে সেটি false করে নিন।
- Puppeteer স্ক্রিপ্ট যদি কাজ না করে:
- Xvfb চালু আছে কিনা চেক করুন এবং VNC সঠিকভাবে কনফিগার করা হয়েছে কিনা দেখুন।
এখন আপনার স্ক্রিপ্ট VNC-এ চালু হবে এবং আপনি ২৪/৭ সেটি চালাতে পারবেন PM2 এর মাধ্যমে!
যদি আরও কোনো প্রশ্ন থাকে বা সমস্যা হয়, আমাকে জানান! 😊