Flask অ্যাপ্লিকেশন ডেপ্লয়মেন্ট (Heroku, AWS, DigitalOcean)

Flask অ্যাপ্লিকেশন Deployment এবং Production Build - ফ্লাস্ক (Flask) - Web Development

211

Flask একটি হালকা ওজনের মাইক্রোফ্রেমওয়ার্ক, যা ছোট থেকে মাঝারি স্কেল ওয়েব অ্যাপ্লিকেশন ডেভেলপ করতে ব্যবহৃত হয়। Flask অ্যাপ্লিকেশনটি প্রোডাকশনে চালানোর জন্য বিভিন্ন হোস্টিং প্ল্যাটফর্মে ডেপ্লয় করা যায়, যেমন Heroku, AWS, এবং DigitalOcean। এই প্ল্যাটফর্মগুলিতে Flask অ্যাপ্লিকেশন ডেপ্লয় করার পদ্ধতি নিম্নরূপ।


১. Heroku তে Flask অ্যাপ ডেপ্লয়মেন্ট

Heroku একটি জনপ্রিয় ক্লাউড প্ল্যাটফর্ম যা Flask অ্যাপ্লিকেশন সহজেই ডেপ্লয় করতে সাহায্য করে। এটি একটি PaaS (Platform as a Service) প্ল্যাটফর্ম, যেখানে কোডপুশের মাধ্যমে অ্যাপ্লিকেশন ডেপ্লয় করা হয়।

ধাপ ১: Heroku অ্যাকাউন্ট তৈরি করা

Heroku অ্যাকাউন্ট তৈরি করতে Heroku ওয়েবসাইটে গিয়ে রেজিস্টার করুন।

ধাপ ২: Heroku CLI ইনস্টল করা

Heroku CLI (Command Line Interface) ইনস্টল করতে নিচের লিঙ্কে যান: Heroku CLI Download

ধাপ ৩: Flask অ্যাপ তৈরি করা

যতটা সহজ, ততটা Flask অ্যাপ তৈরি করুন। উদাহরণস্বরূপ:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def home():
    return "Hello, Flask on Heroku!"

if __name__ == "__main__":
    app.run(debug=True)

ধাপ ৪: প্রয়োজনীয় ফাইল তৈরি করা

Heroku তে Flask অ্যাপ ডেপ্লয় করতে Procfile, requirements.txt, এবং runtime.txt ফাইলগুলি তৈরি করা দরকার।

  1. Procfile: Flask অ্যাপের জন্য এটি নির্দেশ করে যে কোন কমান্ড দিয়ে অ্যাপ রান করতে হবে।

    web: gunicorn app:app
    
  2. requirements.txt: আপনার Flask অ্যাপের সকল ডিপেন্ডেন্সি অন্তর্ভুক্ত করুন:

    flask
    gunicorn
    
  3. runtime.txt: Python এর সংস্করণ নির্ধারণ করুন:

    python-3.8.12
    

ধাপ ৫: Heroku তে Flask অ্যাপ ডেপ্লয় করা

  1. Heroku তে লগইন করুন:

    heroku login
    
  2. Git রেপোজিটরি ইনিশিয়ালাইজ করুন:

    git init
    git add .
    git commit -m "Initial commit"
    
  3. Heroku অ্যাপ তৈরি করুন:

    heroku create
    
  4. Git রেপোজিটরি Heroku তে পুশ করুন:

    git push heroku master
    
  5. Heroku অ্যাপ রান করুন:

    heroku open
    

এখন আপনার Flask অ্যাপ্লিকেশন Heroku তে রান করবে।


২. AWS EC2 তে Flask অ্যাপ ডেপ্লয়মেন্ট

Amazon Web Services (AWS) একটি ক্লাউড কম্পিউটিং প্ল্যাটফর্ম যা EC2 ইনস্ট্যান্সে Flask অ্যাপ ডেপ্লয় করতে সাহায্য করে।

ধাপ ১: AWS অ্যাকাউন্ট তৈরি করা

AWS ওয়েবসাইটে গিয়ে একটি অ্যাকাউন্ট তৈরি করুন।

ধাপ ২: EC2 ইনস্ট্যান্স তৈরি করা

  1. EC2 Dashboard এ গিয়ে একটি নতুন EC2 ইনস্ট্যান্স তৈরি করুন।
  2. Ubuntu Server নির্বাচন করুন এবং Security Group এ HTTP এবং SSH পোর্ট খুলুন।

ধাপ ৩: Flask অ্যাপ EC2 তে ডেপ্লয় করা

  1. EC2 ইনস্ট্যান্সে SSH দিয়ে লগইন করুন:

    ssh -i your-key.pem ubuntu@your-ec2-public-ip
    
  2. প্রয়োজনীয় প্যাকেজ ইনস্টল করুন:

    sudo apt update
    sudo apt install python3-pip python3-dev nginx
    
  3. Flask অ্যাপের ডিরেক্টরি তৈরি করুন এবং অ্যাপ ফাইলটি আপলোড করুন।
  4. Gunicorn ইনস্টল করুন:

    pip3 install gunicorn
    
  5. Gunicorn দিয়ে Flask অ্যাপ রান করুন:

    gunicorn --workers 3 app:app
    
  6. Nginx কনফিগারেশন: Nginx কনফিগারেশন ফাইল তৈরি করে এবং আপনার Flask অ্যাপের জন্য সেট আপ করুন।
  7. Nginx সার্ভিস রিস্টার্ট করুন:

    sudo service nginx restart
    

এখন আপনার Flask অ্যাপ EC2 তে রান করবে।


৩. DigitalOcean তে Flask অ্যাপ ডেপ্লয়মেন্ট

DigitalOcean একটি ক্লাউড প্ল্যাটফর্ম যা সস্তায় এবং সহজে Flask অ্যাপ্লিকেশন ডেপ্লয় করার সুযোগ দেয়।

ধাপ ১: DigitalOcean অ্যাকাউন্ট তৈরি করা

DigitalOcean ওয়েবসাইটে গিয়ে একটি অ্যাকাউন্ট তৈরি করুন।

ধাপ ২: Droplet তৈরি করা

  1. Droplet তৈরি করুন এবং Ubuntu নির্বাচন করুন।
  2. SSH মাধ্যমে Droplet এ লগইন করুন:

    ssh root@your-droplet-ip
    

ধাপ ৩: Flask অ্যাপ সেটআপ করা

  1. Flask অ্যাপের জন্য একটি ডিরেক্টরি তৈরি করুন এবং অ্যাপ ফাইলগুলো আপলোড করুন।
  2. প্রয়োজনীয় প্যাকেজ এবং Gunicorn ইনস্টল করুন:

    sudo apt update
    sudo apt install python3-pip python3-dev nginx
    pip3 install flask gunicorn
    
  3. Gunicorn দিয়ে Flask অ্যাপ চালান:

    gunicorn --workers 3 app:app
    
  4. Nginx কনফিগারেশন: Nginx কনফিগারেশন ফাইল তৈরি করুন এবং Flask অ্যাপের জন্য সেট আপ করুন।
  5. Nginx সার্ভিস রিস্টার্ট করুন:

    sudo service nginx restart
    

এখন আপনার Flask অ্যাপ DigitalOcean তে রান করবে।


Flask অ্যাপ্লিকেশন ডেপ্লয়মেন্টের জন্য Heroku, AWS, এবং DigitalOcean বিভিন্ন ক্লাউড প্ল্যাটফর্ম সরবরাহ করে। Heroku সহজ এবং দ্রুত ডেপ্লয়মেন্টের জন্য উপযুক্ত, যেখানে AWS এবং DigitalOcean আপনাকে আরও কাস্টমাইজড এবং স্কেলেবল পরিবেশ সরবরাহ করে। আপনি যেখানেই Flask অ্যাপ্লিকেশন ডেপ্লয় করুন না কেন, সঠিক কনফিগারেশন এবং নিরাপত্তা ব্যবস্থা নিশ্চিত করতে হবে যাতে অ্যাপ্লিকেশন সুরক্ষিত এবং নির্ভরযোগ্য থাকে।

Content added By
Promotion

Are you sure to start over?

Loading...