Dockerfile এর উপাদান: FROM, RUN, CMD, COPY

Dockerfile হল একটি টেক্সট ফাইল যা Docker Image তৈরি করতে প্রয়োজনীয় নির্দেশাবলী ধারণ করে। বিভিন্ন নির্দেশাবলী (অথবা উপাদান) ব্যবহার করে আমরা একটি কাস্টম Docker Image তৈরি করতে পারি। এখানে Dockerfile-এর প্রধান উপাদানগুলি: FROM, RUN, CMD, এবং COPY সম্পর্কে বিস্তারিত আলোচনা করা হলো।

১. FROM

  • বর্ণনা: FROM নির্দেশাবলী হল Dockerfile-এর প্রথম নির্দেশনা যা একটি বেস ইমেজ নির্বাচন করে। এটি নতুন ইমেজ তৈরির জন্য ভিত্তি হিসেবে কাজ করে।
  • ব্যবহার:এখানে, ubuntu:latest হল একটি বেস ইমেজ যা Ubuntu অপারেটিং সিস্টেমের সর্বশেষ সংস্করণকে নির্দেশ করে।
FROM ubuntu:latest

২. RUN

  • বর্ণনা: RUN নির্দেশাবলী ব্যবহৃত হয় কনটেইনার তৈরি করার সময় কমান্ডগুলি চালানোর জন্য। এটি একটি নতুন লেয়ার তৈরি করে এবং সাধারণত সফটওয়্যার বা প্যাকেজ ইনস্টল করতে ব্যবহৃত হয়।
RUN apt-get update && apt-get install -y python3
  • ব্যবহার:এখানে, এই কমান্ডটি Ubuntu ইমেজে Python3 ইনস্টল করবে এবং একটি নতুন লেয়ার তৈরি করবে।

৩. CMD

  • বর্ণনা: CMD নির্দেশাবলী ব্যবহার করা হয় কনটেইনার শুরু হওয়ার সময় ডিফল্ট কমান্ড বা অ্যাপ্লিকেশন চালানোর জন্য। CMD নির্দেশনাটি কনটেইনারের সর্বশেষ চালনার জন্য ব্যবহৃত হয় এবং কনটেইনারটি যখন চালু হয় তখন এটি কার্যকর হয়।
  • ব্যবহার:
CMD ["python3", "./app.py"]
  • এখানে, কনটেইনারটি চালু হলে app.py ফাইলটি Python3 দিয়ে চালানো হবে। CMD কমান্ডের ব্যবহার থেকে বেরিয়ে যাওয়ার সময় এটি প্রতিস্থাপিত হতে পারে।

৪. COPY

  • বর্ণনা: COPY নির্দেশাবলী ব্যবহার করা হয় লোকাল ফাইল সিস্টেম থেকে কনটেইনারের ফাইল সিস্টেমে ফাইল বা ডিরেক্টরি কপি করার জন্য।
  • ব্যবহার:এখানে, requirements.txt ফাইলটি Dockerfile যেখানে অবস্থিত সেখানে থেকে কনটেইনারের বর্তমান কাজের ডিরেক্টরিতে কপি করা হবে।

উদাহরণ Dockerfile

একটি সম্পূর্ণ Dockerfile উদাহরণ নিচে দেওয়া হলো যা উপরোক্ত সমস্ত উপাদানগুলি ব্যবহার করে:

# বেস ইমেজ নির্বাচন
FROM python:3.9-slim

# কাজের ডিরেক্টরি তৈরি করুন
WORKDIR /usr/src/app

# প্রয়োজনীয় ফাইল কপি করুন
COPY requirements.txt ./

# নির্ভরশীলতা ইনস্টল করুন
RUN pip install --no-cache-dir -r requirements.txt

# অ্যাপ্লিকেশন ফাইল কপি করুন
COPY . .

# অ্যাপ্লিকেশন চালানোর জন্য কমান্ড নির্ধারণ করুন
CMD ["python", "./app.py"]

সারসংক্ষেপ

  • FROM: বেস ইমেজ নির্বাচন করে।
  • RUN: কনটেইনার তৈরি করার সময় কমান্ড চালায়।
  • CMD: কনটেইনার শুরু হলে ডিফল্ট কমান্ড চালায়।
  • COPY: লোকাল ফাইল সিস্টেম থেকে ফাইল বা ডিরেক্টরি কনটেইনারের ফাইল সিস্টেমে কপি করে।

এই উপাদানগুলির সাহায্যে Dockerfile তৈরি করে একটি কাস্টম Docker Image তৈরি করা সম্ভব। Dockerfile হল Docker-এর জন্য একটি গুরুত্বপূর্ণ উপাদান যা অটোমেশন এবং পুনঃব্যবহারযোগ্যতা নিশ্চিত করে।

Content added By

আরও দেখুন...

Promotion