ডকার শুরু করার গাইড: আপনার অ্যাপ্লিকেশনকে কন্টেইনারাইজ করতে দ্রুত শুরু করুন

2/18/2026
6 min read
```html

ডকার শুরু করার গাইড: আপনার অ্যাপ্লিকেশনকে কন্টেইনারাইজ করতে দ্রুত শুরু করুন

ডকার আধুনিক সফটওয়্যার ডেভলপমেন্ট এবং ডিপ্লয়মেন্টের একটি অবিচ্ছেদ্য অংশ হয়ে উঠেছে। Kubernetes নিয়ে আলোচনা চারদিকে থাকলেও, ডকার এখনও অনেক কোম্পানির অ্যাপ্লিকেশন তৈরি, পরীক্ষা এবং স্থাপনার জন্য পছন্দের সরঞ্জাম। এই নিবন্ধটি আপনাকে দ্রুত ডকারের সাথে পরিচয় করিয়ে দেবে, এর মূল ধারণাগুলি বুঝতে সাহায্য করবে এবং একটি ব্যবহারিক উদাহরণ সরবরাহ করবে যা আপনাকে আপনার অ্যাপ্লিকেশনকে কন্টেইনারাইজ করতে সহায়তা করবে। ## ডকারের মূল ধারণা অনুশীলন শুরু করার আগে, ডকারের কিছু মূল ধারণা বোঝা জরুরি: * ইমেজ (Image): ইমেজ হল শুধুমাত্র-পঠনযোগ্য টেমপ্লেট, যাতে অ্যাপ্লিকেশন চালানোর জন্য প্রয়োজনীয় সবকিছু থাকে: কোড, রানটাইম এনভায়রনমেন্ট, সিস্টেম সরঞ্জাম, লাইব্রেরি এবং নির্ভরতা। এটি ভার্চুয়াল মেশিন ইমেজের মতো, তবে আরও হালকা। * কন্টেইনার (Container): কন্টেইনার হল একটি ইমেজ থেকে তৈরি একটি চলমান উদাহরণ। এটি একটি ইমেজের রানটাইম উদাহরণ, যাতে অ্যাপ্লিকেশন এবং এর সমস্ত নির্ভরতা অন্তর্ভুক্ত থাকে। কন্টেইনারগুলি একে অপরের থেকে বিচ্ছিন্ন, নিজস্ব ফাইল সিস্টেম, প্রক্রিয়া এবং নেটওয়ার্ক স্পেস রয়েছে। * ডকার হাব (Docker Hub): ডকার হাব হল একটি পাবলিক ইমেজ রিপোজিটরি, যেখান থেকে আপনি পূর্বে তৈরি করা ইমেজ ডাউনলোড করতে পারেন, অথবা আপনার নিজের ইমেজ আপলোড করতে পারেন। এটি GitHub-এর মতো, তবে বিশেষভাবে ডকার ইমেজের জন্য। * ডকারফাইল (Dockerfile): ডকারফাইল হল একটি টেক্সট ফাইল, যাতে ডকার ইমেজ তৈরির সমস্ত নির্দেশাবলী অন্তর্ভুক্ত থাকে। ডকারফাইল লেখার মাধ্যমে, আপনি ইমেজ তৈরির প্রক্রিয়াটি স্বয়ংক্রিয় করতে পারেন। * ডকার কম্পোজ (Docker Compose): ডকার কম্পোজ হল একটি সরঞ্জাম যা একাধিক কন্টেইনারযুক্ত ডকার অ্যাপ্লিকেশনকে সংজ্ঞায়িত এবং চালানোর জন্য ব্যবহৃত হয়। এটি আপনাকে YAML ফাইল ব্যবহার করে অ্যাপ্লিকেশন পরিষেবাগুলি কনফিগার করতে এবং তারপরে একটি একক কমান্ড ব্যবহার করে সমস্ত পরিষেবা শুরু বা বন্ধ করতে দেয়। ## ডকার ইনস্টলেশন প্রথমত, আপনাকে ডকার ইনস্টল করতে হবে। ডকার বিভিন্ন অপারেটিং সিস্টেমের জন্য ইনস্টলেশন প্যাকেজ সরবরাহ করে। [ডকার অফিসিয়াল ওয়েবসাইট](https://www.docker.com/get-started/) দেখুন এবং সংশ্লিষ্ট নির্দেশাবলী অনুসরণ করে ইনস্টল করুন। ইনস্টলেশন সম্পন্ন হওয়ার পরে, `docker --version` কমান্ডটি চালিয়ে ডকার সঠিকভাবে ইনস্টল হয়েছে কিনা তা যাচাই করতে পারেন। ## একটি সাধারণ পাইথন অ্যাপ্লিকেশন কন্টেইনারাইজ করা আমরা একটি সাধারণ পাইথন অ্যাপ্লিকেশন তৈরি করব এবং ডকার ব্যবহার করে এটিকে কন্টেইনারাইজ করব। ### 1. পাইথন অ্যাপ্লিকেশন তৈরি করুন `app.py` নামের একটি ফাইল তৈরি করুন, যাতে নিম্নলিখিত কোড অন্তর্ভুক্ত থাকে: ```python from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello, Docker!" if __name__ == "__main__": app.run(debug=True, host='0.0.0.0') ``` এই সাধারণ Flask অ্যাপ্লিকেশনটি রুট পাথ `/`-এ "Hello, Docker!" ফেরত দেবে। ### 2. `requirements.txt` ফাইল তৈরি করুন অ্যাপ্লিকেশনটি Flask লাইব্রেরির উপর নির্ভরশীল, তাই আমাদের এই নির্ভরতাগুলি ঘোষণা করার জন্য একটি `requirements.txt` ফাইল তৈরি করতে হবে। ``` Flask ``` ### 3. ডকারফাইল তৈরি করুন `Dockerfile` নামের একটি ফাইল তৈরি করুন এবং নিম্নলিখিত বিষয়বস্তু যুক্ত করুন: ```dockerfile # অফিসিয়াল পাইথন ইমেজকে বেস ইমেজ হিসেবে ব্যবহার করুন FROM python:3.9-slim-buster # ওয়ার্কিং ডিরেক্টরি সেট করুন WORKDIR /app # requirements.txt ফাইলটি ওয়ার্কিং ডিরেক্টরিতে কপি করুন COPY requirements.txt . # নির্ভরতা ইনস্টল করুন RUN pip install --no-cache-dir -r requirements.txt ``` # অ্যাপ্লিকেশন কোড ওয়ার্কিং ডিরেক্টরিতে কপি করুন COPY app.py . # পোর্ট 5000 এক্সপোজ করুন EXPOSE 5000 # স্টার্টআপ কমান্ড সংজ্ঞায়িত করুন CMD ["python", "app.py"] ``` **ডকারফাইল ব্যাখ্যা:** * `FROM python:3.9-slim-buster`: বেস ইমেজটিকে পাইথন 3.9-এর একটি স্লিম সংস্করণ হিসাবে নির্দিষ্ট করে। * `WORKDIR /app`: কন্টেইনারের ভিতরে ওয়ার্কিং ডিরেক্টরি `/app` হিসাবে সেট করে। * `COPY requirements.txt .`: বর্তমান ডিরেক্টরি থেকে `requirements.txt` ফাইলটি কন্টেইনারের `/app` ডিরেক্টরিতে কপি করে। * `RUN pip install --no-cache-dir -r requirements.txt`: কন্টেইনারের ভিতরে `pip` কমান্ডটি চালায় `requirements.txt` ফাইলে নির্দিষ্ট করা নির্ভরতাগুলি ইনস্টল করার জন্য। `--no-cache-dir` প্যারামিটারটি ইমেজের আকার কমাতে পারে। * `COPY app.py .`: বর্তমান ডিরেক্টরি থেকে `app.py` ফাইলটি কন্টেইনারের `/app` ডিরেক্টরিতে কপি করে। * `EXPOSE 5000`: ঘোষণা করে যে কন্টেইনারটি 5000 পোর্টে শুনবে। * `CMD ["python", "app.py"]`: কন্টেইনার শুরু করার সময় যে কমান্ডটি এক্সিকিউট করা হবে তা সংজ্ঞায়িত করে। ### 4. ডকার ইমেজ তৈরি করুন `Dockerfile` রয়েছে এমন ডিরেক্টরিতে, ডকার ইমেজ তৈরি করতে নিম্নলিখিত কমান্ডটি চালান: ```bash docker build -t my-python-app . ``` * `docker build`: ইমেজ তৈরির কমান্ড। * `-t my-python-app`: ইমেজটির জন্য একটি নাম (`my-python-app`) নির্দিষ্ট করে। * `.`: Dockerfile যেখানে অবস্থিত সেই ডিরেক্টরি (বর্তমান ডিরেক্টরি) নির্দিষ্ট করে। নির্ভরতার আকার এবং নেটওয়ার্ক গতির উপর নির্ভর করে বিল্ড প্রক্রিয়াটিতে কিছু সময় লাগতে পারে। ### 5. ডকার কন্টেইনার চালান ডকার কন্টেইনার চালাতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন: ```bash docker run -d -p 5000:5000 my-python-app ``` * `docker run`: কন্টেইনার চালানোর কমান্ড। * `-d`: ডিটাচড মোডে কন্টেইনার চালায় (ব্যাকগ্রাউন্ডে চলে)। * `-p 5000:5000`: হোস্ট মেশিনের 5000 পোর্টটিকে কন্টেইনারের 5000 পোর্টে ম্যাপ করে। * `my-python-app`: কোন ইমেজটি ব্যবহার করতে হবে তা নির্দিষ্ট করে। ### 6. অ্যাপ্লিকেশন যাচাই করুন ব্রাউজারে `http://localhost:5000` এ যান, আপনার "Hello, Docker!" দেখা উচিত। ### 7. কন্টেইনার বন্ধ এবং সরান কন্টেইনার বন্ধ করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন: ```bash docker stop ``` `` `docker ps` কমান্ড ব্যবহার করে আইডি দেখা যেতে পারে। কন্টেইনার সরাতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন: ```bash docker rm ``` ## ডকার কম্পোজ শুরু করা যদি আপনার অ্যাপ্লিকেশন একাধিক পরিষেবা নিয়ে গঠিত হয়, তবে আপনি সেগুলি পরিচালনা করতে ডকার কম্পোজ ব্যবহার করতে পারেন। ### 1. `docker-compose.yml` ফাইল তৈরি করুন `docker-compose.yml` নামের একটি ফাইল তৈরি করুন এবং নিম্নলিখিত বিষয়বস্তু যুক্ত করুন: ```yaml version: "3.9" services: web: image: my-python-app ports: - "5000:5000" ``` **docker-compose.yml ব্যাখ্যা:*** `version: "3.9"`: ডকার কম্পোজ ফাইলের সংস্করণ নির্দিষ্ট করে। * `services`: অ্যাপ্লিকেশন পরিষেবা সংজ্ঞায়িত করে। * `web`: "web" নামের একটি পরিষেবা সংজ্ঞায়িত করে। * `image: my-python-app`: পরিষেবা দ্বারা ব্যবহৃত ইমেজ নির্দিষ্ট করে। * `ports`: পোর্ট ম্যাপিং সংজ্ঞায়িত করে। ### 2. অ্যাপ্লিকেশন শুরু করা `docker-compose.yml` ফাইল ধারণকারী ডিরেক্টরিতে, অ্যাপ্লিকেশন শুরু করতে নিম্নলিখিত কমান্ডটি চালান: ```bash docker-compose up -d ``` * `docker-compose up`: অ্যাপ্লিকেশন শুরু করার কমান্ড। * `-d`: বিচ্ছিন্ন মোডে কন্টেইনার চালায়। ### 3. অ্যাপ্লিকেশন বন্ধ করা অ্যাপ্লিকেশন বন্ধ করতে নিম্নলিখিত কমান্ড ব্যবহার করুন: ```bash docker-compose down ``` ## ডকার নিরাপত্তা সেরা অনুশীলন আলোচনা থেকে দেখা যায়, ডকার ইমেজের নিরাপত্তা একটি গুরুত্বপূর্ণ বিষয়। এখানে কিছু ডকার নিরাপত্তা সেরা অনুশীলন দেওয়া হল: * **অফিসিয়াল ইমেজ ব্যবহার করুন:** যতটা সম্ভব অফিসিয়ালভাবে প্রদত্ত ইমেজ ব্যবহার করুন, এই ইমেজগুলি সাধারণত নিরাপত্তা স্ক্যান এবং রক্ষণাবেক্ষণ করা হয়। * **ইমেজ দুর্বলতা স্ক্যান করুন:** Trivy-এর মতো সরঞ্জাম ব্যবহার করে ইমেজের পরিচিত দুর্বলতা স্ক্যান করুন এবং সময়মতো ইমেজ আপডেট করুন। * **ন্যূনতম সুযোগ-সুবিধা নীতি ব্যবহার করুন:** রুট ব্যবহারকারী হিসাবে কন্টেইনার চালানো এড়িয়ে চলুন। * **কন্টেইনার রিসোর্স সীমিত করুন:** cgroups ব্যবহার করে কন্টেইনারের CPU এবং মেমরি ব্যবহার সীমিত করুন। * **নিয়মিত ইমেজ আপডেট করুন:** নিরাপত্তা দুর্বলতা ঠিক করতে ইমেজ আপডেট রাখুন। * **নিরাপত্তা স্ক্যানিং সরঞ্জাম ব্যবহার করুন:** Snyk, Clair-এর মতো সরঞ্জাম আপনার CI/CD প্রক্রিয়ার সাথে একত্রিত করা যেতে পারে, স্বয়ংক্রিয়ভাবে ইমেজ দুর্বলতা স্ক্যান করতে। ## উপসংহারএই নিবন্ধটি ডকারের একটি দ্রুত শুরু করার গাইড প্রদান করে, যেখানে মূল ধারণা, ইনস্টলেশন পদক্ষেপ এবং একটি সাধারণ পাইথন অ্যাপ্লিকেশনের কন্টেইনারাইজেশন উদাহরণ অন্তর্ভুক্ত রয়েছে। এই মৌলিক বিষয়গুলি শেখার মাধ্যমে, আপনি আপনার অ্যাপ্লিকেশন তৈরি, পরীক্ষা এবং স্থাপন করতে ডকার ব্যবহার শুরু করতে পারেন। মনে রাখবেন, নিরাপত্তা অত্যন্ত গুরুত্বপূর্ণ, সর্বদা ডকার চিত্রের নিরাপত্তার দিকে মনোযোগ দিন এবং আপনার অ্যাপ্লিকেশনকে সুরক্ষিত রাখতে উপযুক্ত ব্যবস্থা নিন। যদিও কুবারনেটিস বৃহৎ আকারের কন্টেইনার অর্কেস্ট্রেশনে শক্তিশালী, তবে ডকার অনেক পরিস্থিতিতে এখনও একটি সহজ এবং কার্যকর সমাধান। ডকার আয়ত্ত করে, আপনি আধুনিক সফ্টওয়্যার বিকাশ এবং স্থাপনার চ্যালেঞ্জগুলি আরও ভালোভাবে মোকাবেলা করতে পারবেন।
Published in Technology

You Might Also Like

কিভাবে ক্লাউড কম্পিউটিং প্রযুক্তি ব্যবহার করবেন: আপনার প্রথম ক্লাউড অবকাঠামো নির্মাণের সম্পূর্ণ গাইডTechnology

কিভাবে ক্লাউড কম্পিউটিং প্রযুক্তি ব্যবহার করবেন: আপনার প্রথম ক্লাউড অবকাঠামো নির্মাণের সম্পূর্ণ গাইড

[[HTMLPLACEHOLDER0]] [[HTMLPLACEHOLDER1]] [[HTMLPLACEHOLDER2]] [[HTMLPLACEHOLDER3]] [[HTMLPLACEHOLDER4]] [[HTMLPLACEHOLD...

সতর্কতা! Claude Code এর জনক স্পষ্ট বললেন: ১ মাস পর Plan Mode ব্যবহার না করলে সফটওয়্যার ইঞ্জিনিয়ারের উপাধি বিলীন হয়ে যাবেTechnology

সতর্কতা! Claude Code এর জনক স্পষ্ট বললেন: ১ মাস পর Plan Mode ব্যবহার না করলে সফটওয়্যার ইঞ্জিনিয়ারের উপাধি বিলীন হয়ে যাবে

সতর্কতা! Claude Code এর জনক স্পষ্ট বললেন: ১ মাস পর Plan Mode ব্যবহার না করলে সফটওয়্যার ইঞ্জিনিয়ারের উপাধি বিলীন হয়ে য...

2026 সালের শীর্ষ 10 গভীর শিক্ষার সম্পদ সুপারিশTechnology

2026 সালের শীর্ষ 10 গভীর শিক্ষার সম্পদ সুপারিশ

2026 সালের শীর্ষ 10 গভীর শিক্ষার সম্পদ সুপারিশ গভীর শিক্ষার বিভিন্ন ক্ষেত্রে দ্রুত উন্নতির সাথে সাথে, আরও বেশি শেখার সম্...

2026 সালের শীর্ষ 10 AI এজেন্ট: মূল বিক্রয় পয়েন্ট বিশ্লেষণTechnology

2026 সালের শীর্ষ 10 AI এজেন্ট: মূল বিক্রয় পয়েন্ট বিশ্লেষণ

2026 সালের শীর্ষ 10 AI এজেন্ট: মূল বিক্রয় পয়েন্ট বিশ্লেষণ ভূমিকা কৃত্রিম বুদ্ধিমত্তার দ্রুত উন্নতির সাথে, AI এজেন্ট (A...

2026 সালের শীর্ষ 10 AI টুলের সুপারিশ: কৃত্রিম বুদ্ধিমত্তার প্রকৃত সম্ভাবনা মুক্ত করুনTechnology

2026 সালের শীর্ষ 10 AI টুলের সুপারিশ: কৃত্রিম বুদ্ধিমত্তার প্রকৃত সম্ভাবনা মুক্ত করুন

2026 সালের শীর্ষ 10 AI টুলের সুপারিশ: কৃত্রিম বুদ্ধিমত্তার প্রকৃত সম্ভাবনা মুক্ত করুন বর্তমান প্রযুক্তির দ্রুত উন্নয়নের...

2026 সালের শীর্ষ 10 AWS টুল এবং সম্পদ সুপারিশTechnology

2026 সালের শীর্ষ 10 AWS টুল এবং সম্পদ সুপারিশ

2026 সালের শীর্ষ 10 AWS টুল এবং সম্পদ সুপারিশ দ্রুত বিকাশমান ক্লাউড কম্পিউটিং ক্ষেত্রে, অ্যামাজন ওয়েব সার্ভিসেস (AWS) স...