![একটি ডকারফাইলে 'কপি' এবং 'অ্যাড' কমান্ডের মধ্যে পার্থক্য বোঝা](https://www.tempmail.us.com/images/04/04169ca3324eaf23caed5fea669d96e1-836px.webp/%E0%A6%8F%E0%A6%95%E0%A6%9F-%E0%A6%A1%E0%A6%95-%E0%A6%B0%E0%A6%AB-%E0%A6%87%E0%A6%B2-%E0%A6%95%E0%A6%AA-%E0%A6%8F%E0%A6%AC-%E0%A6%85-%E0%A6%AF-%E0%A6%A1-%E0%A6%95%E0%A6%AE-%E0%A6%A8-%E0%A6%A1-%E0%A6%B0-%E0%A6%AE%E0%A6%A7-%E0%A6%AF-%E0%A6%AA-%E0%A6%B0-%E0%A6%A5%E0%A6%95-%E0%A6%AF-%E0%A6%AC-%E0%A6%9D-836px.webp)
ডকারফাইল কমান্ড ব্যাখ্যা করা হয়েছে
একটি ডকারফাইলে 'কপি' এবং 'এডিডি' কমান্ডগুলি আপনার কন্টেইনারের ফাইল সিস্টেমে ফাইলগুলিকে প্রবর্তন করতে পরিবেশন করে, তবে এগুলি স্বতন্ত্র কার্যকারিতা এবং সর্বোত্তম-ব্যবহারের দৃশ্যের সাথে আসে। দক্ষ ডকারফাইল পরিচালনার জন্য এবং আপনার কন্টেইনারাইজড অ্যাপ্লিকেশনগুলি প্রত্যাশিতভাবে সম্পাদন করার জন্য এই পার্থক্যগুলি বোঝা অপরিহার্য।
যদিও 'COPY' প্রাথমিকভাবে সহজবোধ্য ফাইল কপি করার জন্য ব্যবহৃত হয়, 'ADD' অতিরিক্ত ক্ষমতা প্রদান করে, যেমন দূরবর্তী ইউআরএলগুলি পরিচালনা করা এবং সংকুচিত ফাইলগুলি বের করা। এই নিবন্ধটি প্রতিটি কমান্ডের সূক্ষ্মতাগুলি অন্বেষণ করবে, আপনার ডকার বিল্ডগুলিকে অপ্টিমাইজ করতে কখন একটির উপর অন্যটি ব্যবহার করতে হবে সে সম্পর্কে আপনাকে গাইড করবে।
আদেশ | বর্ণনা |
---|---|
FROM | ডকার ইমেজ তৈরির জন্য ব্যবহার করার জন্য বেস ইমেজ নির্দিষ্ট করে। |
WORKDIR | কন্টেইনারের ভিতরে কাজের ডিরেক্টরি সেট করে। |
COPY | হোস্ট থেকে কন্টেইনারের ফাইল সিস্টেমে ফাইল বা ডিরেক্টরি কপি করে। |
ADD | কন্টেইনারের ফাইল সিস্টেমে ফাইল, ডিরেক্টরি বা দূরবর্তী URL যোগ করে এবং ফাইল নিষ্কাশন পরিচালনা করতে পারে। |
RUN | কন্টেইনারের পরিবেশে একটি কমান্ড কার্যকর করে। |
EXPOSE | ডকারকে অবহিত করে যে ধারকটি রানটাইমে নির্দিষ্ট নেটওয়ার্ক পোর্টে শোনে। |
ডকারফাইল কমান্ডের বিস্তারিত ব্যাখ্যা
প্রথম স্ক্রিপ্ট এর ব্যবহার প্রদর্শন করে COPY একটি ডকারফাইলে কমান্ড। দ্য COPY নির্দেশনা সহজবোধ্য এবং হোস্ট সিস্টেম থেকে ডকার কন্টেইনারের ফাইল সিস্টেমে ফাইল বা ডিরেক্টরি অনুলিপি করতে ব্যবহৃত হয়। এই উদাহরণে, স্ক্রিপ্টটি দিয়ে শুরু হয় FROM কমান্ড, যা বেস ইমেজ হিসাবে নির্দিষ্ট করে python:3.8-slim-buster . দ্য WORKDIR কমান্ড কন্টেইনারের ভিতরে ওয়ার্কিং ডিরেক্টরি সেট করে /app . এই দ্বারা অনুসরণ করা হয় COPY কমান্ড, যা হোস্টে বর্তমান ডিরেক্টরির বিষয়বস্তু কপি করে /app ধারক মধ্যে ডিরেক্টরি. ফাইল কপি করার পর, RUN কমান্ডে উল্লেখ করা প্রয়োজনীয় পাইথন প্যাকেজ ইনস্টল করতে ব্যবহৃত হয় requirements.txt ফাইল অবশেষে, দ EXPOSE কমান্ড বহির্বিশ্বের জন্য পোর্ট 80 উপলব্ধ করে।
বিপরীতে, দ্বিতীয় স্ক্রিপ্ট ব্যবহার হাইলাইট ADD একটি ডকারফাইলে কমান্ড। প্রথম স্ক্রিপ্টের মতো, এটি দিয়ে শুরু হয় FROM বেস ইমেজ সেট করতে কমান্ড এবং WORKDIR কাজের ডিরেক্টরি সংজ্ঞায়িত করার জন্য কমান্ড। এখানে মূল পার্থক্য হল ADD কমান্ড, যা একটি দূরবর্তী URL থেকে ফাইল যোগ করতে ব্যবহৃত হয়, এই ক্ষেত্রে, https://example.com/data/archive.tar.gz . দ্য ADD কমান্ড শুধুমাত্র ফাইলগুলি অনুলিপি করে না বরং স্বয়ংক্রিয়ভাবে সংকুচিত ফাইলগুলি বের করার ক্ষমতাও রয়েছে, যা পরবর্তী দ্বারা প্রদর্শিত হয়েছে RUN কমান্ড যা এক্সট্রাক্ট করে archive.tar.gz মধ্যে ফাইল করুন /app ডিরেক্টরি এটি অনুসরণ করে, দ RUN কমান্ড প্রয়োজনীয় পাইথন প্যাকেজ ইনস্টল করে, এবং EXPOSE কমান্ড পোর্ট 80 উপলব্ধ করে তোলে।
একটি ডকারফাইলে কপি ব্যবহার করা
ডকারফাইল উদাহরণ
# Use an official Python runtime as a parent image
FROM python:3.8-slim-buster
# Set the working directory in the container
WORKDIR /app
# Copy the current directory contents into the container at /app
COPY . /app
# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# Make port 80 available to the world outside this container
EXPOSE 80
একটি ডকারফাইলে ADD ব্যবহার করা
ডকারফাইল উদাহরণ
# Use an official Python runtime as a parent image
FROM python:3.8-slim-buster
# Set the working directory in the container
WORKDIR /app
# Add files from a remote URL
ADD https://example.com/data/archive.tar.gz /app/
# Extract the archive file
RUN tar -xzf /app/archive.tar.gz -C /app
# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# Make port 80 available to the world outside this container
EXPOSE 80
ডকারফাইলে কপি এবং অ্যাড-এর গভীর বিশ্লেষণ
যখন উভয় COPY এবং ADD কমান্ডগুলি হোস্ট সিস্টেম থেকে কন্টেইনারের ফাইল সিস্টেমে ফাইল কপি করার উদ্দেশ্যে কাজ করে, তাদের আলাদা বৈশিষ্ট্য রয়েছে এবং কেসগুলি ব্যবহার করে যা প্রতিটিকে বিভিন্ন পরিস্থিতিতে উপযুক্ত করে তোলে। দ্য COPY কমান্ড সহজ এবং আরো অনুমানযোগ্য। এটি মৌলিক ফাইল অনুলিপি করার জন্য সর্বোত্তম ব্যবহার করা হয় যেখানে আর্কাইভগুলি বের করা বা দূরবর্তী ফাইলগুলি আনার মতো কোনও অতিরিক্ত প্রক্রিয়াকরণের প্রয়োজন হয় না। এই কমান্ডটি নিশ্চিত করে যে শুধুমাত্র স্থানীয় ফাইল এবং ডিরেক্টরিগুলি কন্টেইনারে অনুলিপি করা হয়েছে, এইভাবে একটি পরিষ্কার এবং সুরক্ষিত বিল্ড পরিবেশ বজায় রাখা হয়েছে।
অন্যদিকে, দ ADD কমান্ড আরও কার্যকারিতা প্রদান করে তবে অতিরিক্ত জটিলতা এবং সম্ভাব্য নিরাপত্তা ঝুঁকি সহ। দ্য ADD কমান্ড ইউআরএল ডাউনলোড পরিচালনা করতে পারে এবং স্বয়ংক্রিয়ভাবে সংকুচিত ফাইল যেমন এক্সট্রাক্ট করতে পারে .tar, .gzip, এবং .bzip2. এটি এমন ক্ষেত্রে উপকারী হতে পারে যেখানে আপনার বিল্ড প্রক্রিয়াটির জন্য দূরবর্তী সম্পদ বা সংরক্ষণাগার প্রয়োজন যা চিত্র তৈরির সময় বের করা দরকার। যাইহোক, এই অতিরিক্ত বৈশিষ্ট্যগুলি ঝুঁকি নিয়ে আসে, যেমন দূরবর্তী অবস্থান থেকে ডাউনলোড করার সময় ফাইলগুলির অনিচ্ছাকৃত ওভাররাইট করা এবং নিরাপত্তা দুর্বলতা। অতএব, এর মধ্যে সিদ্ধান্ত নেওয়ার সময় এই কারণগুলিকে সাবধানে বিবেচনা করা অত্যন্ত গুরুত্বপূর্ণ COPY এবং ADD.
ডকারফাইলে কপি এবং অ্যাড সম্পর্কে সাধারণ প্রশ্ন এবং উত্তর
- প্রাথমিক ব্যবহার কি COPY একটি ডকারফাইলে কমান্ড?
- দ্য COPY কমান্ডটি প্রাথমিকভাবে হোস্ট সিস্টেম থেকে ডকার কন্টেইনারে স্থানীয় ফাইল এবং ডিরেক্টরি অনুলিপি করার জন্য ব্যবহৃত হয়।
- আপনি কখন ব্যবহার করা উচিত ADD এর পরিবর্তে কমান্ড COPY?
- আপনি ব্যবহার করা উচিত ADD যখন আপনাকে একটি URL থেকে ফাইল কপি করতে হবে বা বিল্ড প্রক্রিয়া চলাকালীন সংকুচিত ফাইলগুলি বের করতে হবে তখন কমান্ড দিন।
- ব্যবহার করার নিরাপত্তা প্রভাব কি কি ADD আদেশ?
- দ্য ADD কমান্ড নিরাপত্তা ঝুঁকি প্রবর্তন করতে পারে, বিশেষ করে যখন দূরবর্তী URL থেকে ফাইল ডাউনলোড করা হয়, কারণ এটি সম্ভাব্যভাবে বিদ্যমান ফাইলগুলিকে ওভাররাইট করতে পারে বা দুর্বলতার পরিচয় দিতে পারে।
- পারেন COPY কমান্ড সংকুচিত ফাইল নিষ্কাশন?
- না, দ COPY কমান্ডের সংকুচিত ফাইল নিষ্কাশন করার ক্ষমতা নেই; এটি কেবল তাদের মতো করে অনুলিপি করে।
- কিভাবে করে ADD থেকে ভিন্নভাবে সংকুচিত ফাইল পরিচালনা করুন COPY?
- দ্য ADD কমান্ড স্বয়ংক্রিয়ভাবে সংকুচিত ফাইল যেমন এক্সট্রাক্ট করে .tar, .gzip, এবং .bzip2 যখন তারা পাত্রে যোগ করা হয়।
- এর সাথে কি ওয়াইল্ডকার্ড ব্যবহার করা সম্ভব COPY আদেশ?
- হ্যাঁ, আপনি এর সাথে ওয়াইল্ডকার্ড ব্যবহার করতে পারেন COPY একটি প্যাটার্নের সাথে মেলে একাধিক ফাইল বা ডিরেক্টরি অনুলিপি করার কমান্ড।
- একটি URL প্রদান করা হলে কি হবে ADD আদেশ নাগাল হয় না?
- একটি URL প্রদান করা হলে ADD কমান্ড পৌঁছানো যায় না, ডকার বিল্ড প্রক্রিয়া ব্যর্থ হবে।
- একটি সাধারণ, স্থানীয় ফাইল কপি অপারেশনের জন্য কোন কমান্ড ব্যবহার করা উচিত?
- সহজ, স্থানীয় ফাইল কপি অপারেশনের জন্য, আপনার ব্যবহার করা উচিত COPY কমান্ড হিসাবে এটি আরো সহজবোধ্য এবং নিরাপদ.
- পারেন ADD কমান্ড স্থানীয় এবং দূরবর্তী উভয় উৎস থেকে ফাইল যোগ করতে ব্যবহার করা হবে?
- হ্যাঁ ADD কমান্ড স্থানীয় উত্স এবং দূরবর্তী URL উভয় থেকে ফাইল যোগ করতে পারে, এটি নির্দিষ্ট পরিস্থিতিতে আরও বহুমুখী করে তোলে।
ডকার কপি এবং ADD কমান্ডগুলি মোড়ানো
কখন ব্যবহার করতে হবে তা বোঝা COPY এবং ADD আপনার কন্টেইনার বিল্ড অপ্টিমাইজ করার জন্য আপনার ডকারফাইলে অপরিহার্য। যখন COPY স্থানীয় ফাইলগুলির জন্য সহজবোধ্য এবং নিরাপদ, ADD অতিরিক্ত জটিলতা এবং সম্ভাব্য নিরাপত্তা উদ্বেগের খরচে অতিরিক্ত ক্ষমতা প্রদান করে। আপনার নির্দিষ্ট চাহিদার উপর ভিত্তি করে সঠিক কমান্ড নির্বাচন করা আপনার ডকার ইমেজগুলির দক্ষতা এবং নিরাপত্তা বাড়াতে পারে।