Angular অ্যাপ্লিকেশন বিল্ড এবং সার্ভ করা

Web Development - অ্যাঙ্গুলার (Angular) - Angular CLI |

Angular অ্যাপ্লিকেশন তৈরি করার পর, আপনাকে অ্যাপ্লিকেশনটি বিল্ড এবং সার্ভ করতে হবে যাতে এটি আপনার পছন্দসই পরিবেশে (local, staging, production) কার্যকরী হয়। Angular CLI আপনাকে এটি সহজভাবে করতে সাহায্য করে।


1. Angular অ্যাপ্লিকেশন বিল্ড করা

Angular অ্যাপ্লিকেশনকে বিল্ড করার জন্য Angular CLI-তে ng build কমান্ড ব্যবহার করা হয়। এই কমান্ডটি আপনার অ্যাপ্লিকেশনটি প্রোডাকশনের জন্য প্রস্তুত করবে এবং আপনার অ্যাপ্লিকেশনটি যেসব ফাইলের মাধ্যমে কাজ করবে, সেগুলো dist/ (distribution) ফোল্ডারে তৈরি করবে।

ng build কমান্ড

ng build

এটি আপনার অ্যাপ্লিকেশনটির ডেভেলপমেন্ট (development) বিল্ড তৈরি করবে। ডিফল্টরূপে, বিল্ডটি dist/ ফোল্ডারে থাকবে। dist/ ফোল্ডারের মধ্যে আপনি অ্যাপ্লিকেশনের স্ট্যাটিক ফাইল (HTML, CSS, JavaScript, ইত্যাদি) পাবেন।

প্রোডাকশন বিল্ড তৈরি করা

যদি আপনি প্রোডাকশন পরিবেশের জন্য অ্যাপ্লিকেশনটি প্রস্তুত করতে চান, তাহলে আপনাকে --prod ফ্ল্যাগটি ব্যবহার করতে হবে। এটি আপনার অ্যাপ্লিকেশনের অপটিমাইজড (minified, uglified) সংস্করণ তৈরি করবে।

ng build --prod

এটি কোড মিনিফিকেশন, গাঞ্জাম কোড অপ্টিমাইজেশন এবং অ্যাপ্লিকেশনের পারফরম্যান্স উন্নত করার জন্য অন্যান্য অপটিমাইজেশন করবে।

angular.json কনফিগারেশন

যখন আপনি ng build --prod চালান, Angular CLI আপনার প্রজেক্টের angular.json কনফিগারেশন ফাইলের মধ্যে প্রোডাকশন সেটিংস ব্যবহার করে। আপনি চাইলে এখানে কাস্টম কনফিগারেশনও যুক্ত করতে পারেন (যেমন: fileReplacements এর মাধ্যমে প্রোডাকশন এবং ডেভেলপমেন্ট পরিবেশের জন্য আলাদা কনফিগ ফাইল ব্যবহার করতে পারেন)।


2. অ্যাপ্লিকেশন সার্ভ করা

Angular CLI একটি বিল্ট-ইন সার্ভার সরবরাহ করে, যার মাধ্যমে আপনি ডেভেলপমেন্ট পরিবেশে অ্যাপ্লিকেশনটি দেখতে পারবেন। ng serve কমান্ডটি ব্যবহার করে Angular অ্যাপ্লিকেশনটি লোকাল সার্ভারে রান করতে পারবেন।

ng serve কমান্ড

ng serve

এটি আপনার অ্যাপ্লিকেশনটি লোকাল ডেভেলপমেন্ট সার্ভারে রান করবে এবং আপনি http://localhost:4200/ ঠিকানায় অ্যাপ্লিকেশনটি দেখতে পারবেন।

কিছু অপশন সহ ng serve কমান্ড:

  • --port: আপনি পছন্দের পোর্ট নম্বর নির্ধারণ করতে পারেন। ডিফল্ট পোর্ট হল 4200।

    ng serve --port 8080
    
  • --open: এটি কমান্ডটি রান করার পর আপনার ব্রাউজারে স্বয়ংক্রিয়ভাবে অ্যাপ্লিকেশনটি খুলে দেবে।

    ng serve --open
    
  • --proxy-config: যদি আপনি ব্যাকএন্ড সার্ভারের সাথে কাজ করছেন এবং CORS (Cross-Origin Resource Sharing) সমস্যা মোকাবেলা করছেন, তাহলে আপনি একটি proxy configuration ফাইল ব্যবহার করতে পারেন।

    ng serve --proxy-config proxy.conf.json
    

সার্ভারের স্বয়ংক্রিয় রিলোড

ng serve স্বয়ংক্রিয়ভাবে আপনার ফাইলগুলিতে কোনো পরিবর্তন করলে, তা ব্রাউজারে রিফ্রেশ হয়ে যাবে। এটি ডেভেলপমেন্টের জন্য খুবই উপযোগী, কারণ আপনি কোড পরিবর্তন করলেই ব্রাউজারে পরিবর্তনটি দেখতে পাবেন।


3. প্রোডাকশন পরিবেশে অ্যাপ্লিকেশন হোস্ট করা

প্রোডাকশন পরিবেশে অ্যাপ্লিকেশন হোস্ট করার জন্য, আপনি অ্যাপ্লিকেশনের বিল্ড ফাইলগুলো প্রোডাকশন সাইজে তৈরি করবেন এবং একটি ওয়েব সার্ভারে আপলোড করবেন (যেমন Apache, Nginx, ইত্যাদি)।

অ্যাপ্লিকেশন ডেপ্লয়মেন্টের প্রক্রিয়া:

  1. ng build --prod চালিয়ে প্রোডাকশন বিল্ড তৈরি করুন।
  2. dist/ ফোল্ডারটি আপনার ওয়েব সার্ভারের ডিরেক্টরিতে কপি করুন।
  3. আপনার ওয়েব সার্ভার কনফিগার করুন যাতে এটি অ্যাপ্লিকেশনটি হোস্ট করতে পারে।

উদাহরণস্বরূপ, যদি আপনি Nginx ব্যবহার করেন, আপনি Nginx এর root ডিরেক্টরিতে dist/ ফোল্ডারটি কপি করবেন।

sudo cp -r dist/my-app/* /usr/share/nginx/html/

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


4. Angular CLI বিল্ড এবং সার্ভ কমান্ডের সাথে টিপস

  • Angular Universal: যদি আপনি সার্ভার সাইড রেন্ডারিং (SSR) করতে চান, Angular Universal ব্যবহার করতে হবে। এটি Angular অ্যাপ্লিকেশনকে সার্ভার সাইডে রেন্ডার করতে সাহায্য করে এবং SEO (Search Engine Optimization) উন্নত করে।
  • HMR (Hot Module Replacement): ng serve --hmr ব্যবহার করলে কোড পরিবর্তন হলে পুরো পেজ রিলোড না হয়ে শুধুমাত্র পরিবর্তিত মডিউল রিলোড হবে।
  • Base href: প্রোডাকশন বিল্ডে অ্যাপ্লিকেশনের base href কনফিগার করতে হয়। এটি / হতে পারে অথবা আপনার ডোমেইনের সাবডিরেক্টরি অনুসারে কনফিগার করা যেতে পারে।
<base href="/">

এভাবে আপনি Angular অ্যাপ্লিকেশনটি বিল্ড এবং সার্ভ করতে পারেন এবং প্রোডাকশন পরিবেশে ডেপ্লয় করতে পারবেন।

Content added By
Promotion