Omnikit
ডেভফাইলঅর্থসব টুল
Ctrl K
ডেভেলপার টুলফাইল টুলঅর্থ ক্যালকুলেটরসব টুল
হোমডেভেলপার টুলdocker run থেকে docker compose কনভার্টার
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

docker run থেকে docker compose কনভার্টার

ডেভ

docker run কমান্ডকে compose.yaml-এ রূপান্তর করুন: পোর্ট, ভলিউম, নেটওয়ার্ক, হেলথ চেক

আপনার ব্রাউজারে চলে। আপনি যা লেখেন তা কোথাও পাঠানো হয় না। যাচাই করা হয়েছে 16 অক্টোবর, 2026।

docker run-এর প্রতিটি ফ্ল্যাগের একটি Compose কী আছে। ইমেজ image হিসেবেই থাকে, আর 5টি সাধারণ ফ্ল্যাগ সরাসরি মিলে যায়: -p হয় ports, -e হয় environment, -v হয় volumes, --restart হয় restart এবং --name হয় container_name, আর -it মেলে stdin_open ও tty-এর সঙ্গে। -d ও --rm-এর মতো ফ্ল্যাগের কোনো সমতুল্য নেই, কারণ docker compose up -d সার্ভিসগুলোকে ব্যাকগ্রাউন্ডে চালায়।

এই পৃষ্ঠাটি ইংরেজি মূল লেখা থেকে যন্ত্রের সাহায্যে অনুবাদ করা হয়েছে। এই অনুবাদটি এখনও কোনো মানুষ পর্যালোচনা করেননি, তাই ইংরেজি সংস্করণটিকেই নির্ভরযোগ্য ধরুন। ইংরেজি মূল লেখাটি পড়ুন

এরপর:
  • Nginx Config Generator A commented nginx server block for a reverse proxy, static site, SPA or redirect
  • Dockerfile লিন্টার 55টি hadolint নিয়মে Dockerfile পরীক্ষা করুন: নির্দিষ্ট ভার্সন, root ব্যবহারকারী, ক্যাশ এবং আরও

কীভাবে একটি docker run কমান্ডকে docker compose-এ রূপান্তর করবেন

1

এক বা একাধিক docker run কমান্ড পেস্ট করুন, ব্যাকস্ল্যাশ দিয়ে লাইন ভাঙা থাকলেও চলবে, অথবা একটি উদাহরণ দেখুন-এ ক্লিক করুন।

2

ডানদিকের compose.yaml পড়ুন: প্রতিটি কমান্ডের জন্য একটি সার্ভিস, আর নিচে ভলিউম ও নেটওয়ার্ক ঘোষণা করা।

3

যেসব ফ্ল্যাগের Compose-এ কোনো সমতুল্য নেই, যেমন --rm, সেগুলোর নোট দেখে নিন।

4

compose.yaml সংরক্ষণ করতে ডাউনলোড-এ ক্লিক করুন, তারপর একই ফোল্ডারে docker compose up -d চালান।

Docker Run to Compose Converter সম্পর্কে

কাজ করা একটি docker run কমান্ডই একটি Compose ফাইলের সেরা সূচনাবিন্দু, কিন্তু হাতে 10টি ফ্ল্যাগ নতুন করে লিখলে ভুল হওয়ার সম্ভাবনা থাকে। কমান্ডটি, বা কয়েকটি, পেস্ট করুন এবং প্রতিটির জন্য একটি সার্ভিসসহ Compose Specification অনুযায়ী একটি compose.yaml পান, যাতে এটি docker compose up -d-এর সঙ্গে কাজ করে।

docker run compose.yaml
--name web container_name: web
-p 8080:80 ports: ["8080:80"]
-e KEY=value environment: ["KEY=value"]
-v data:/data volumes: সঙ্গে শীর্ষ স্তরের একটি data:
--network shop-net networks: সঙ্গে shop-net: external: true
--restart unless-stopped restart: unless-stopped
-it stdin_open: true, tty: true
--gpus all deploy.resources.reservations.devices

কী বোঝা হয়। 70টিরও বেশি docker run ফ্ল্যাগ, Docker CLI যে সব বানানে গ্রহণ করে তার প্রতিটিতে: --flag value, --flag=value, -p80:80 এবং -it বা -dp 3000:3000-এর মতো একসঙ্গে লেখা ছোট ফ্ল্যাগ। \ (bash), ^ (cmd) বা ` (PowerShell) দিয়ে একাধিক লাইনে ভাঙা কমান্ড জোড়া লাগানো হয়, উদ্ধৃতিচিহ্ন শেল যেভাবে পড়ে সেভাবেই পড়া হয়, এবং ভলিউমে থাকা $(pwd) হয়ে যায় ./, কারণ Compose পাথগুলো Compose ফাইলের ফোল্ডার থেকে নির্ধারণ করে।

একসঙ্গে কয়েকটি কমান্ড। পুরো একটি সেটআপ স্ক্রিপ্ট পেস্ট করুন: প্রতিটি docker run একটি সার্ভিস হয়, docker network create-এর মতো অন্য কমান্ড বাদ দেওয়া হয়, এবং একই ইমেজ ব্যবহার করা সার্ভিসগুলো আলাদা নাম পায়।

কিছুই লুকানো নয়। --rm ও -d-এর মতো যেসব ফ্ল্যাগের Compose-এ সমতুল্য নেই, এবং টুলটি চেনে না এমন যেকোনো ফ্ল্যাগ, হারিয়ে না গিয়ে ফলাফলের নিচে তালিকাভুক্ত হয়। পোর্ট ও এনভায়রনমেন্টের মান উদ্ধৃতিচিহ্নের মধ্যে রাখা হয়, যাতে কোনো YAML রিডার 22:22-কে সংখ্যা মনে না করে। ফাইলে কোনো version: কী থাকে না, যা Compose Specification অপ্রচলিত ঘোষণা করেছে।

সবকিছু আপনার ব্রাউজারে চলে; আপনি যে কমান্ড পেস্ট করেন, যাতে প্রায়ই পাসওয়ার্ড থাকে, তা কখনো কোথাও পাঠানো হয় না।

সাধারণ জিজ্ঞাসা

কীভাবে একটি docker run কমান্ডকে docker compose-এ রূপান্তর করব?

একটি সার্ভিসের অধীনে প্রতিটি ফ্ল্যাগকে তার Compose কী দিন: ইমেজ image হিসেবে, -p ports হিসেবে, -e environment হিসেবে, -v volumes হিসেবে, --name container_name হিসেবে এবং --restart restart হিসেবে। নামযুক্ত ভলিউম ও কাস্টম নেটওয়ার্ক শীর্ষ স্তরেও একটি এন্ট্রি পায়। এখানে কমান্ডটি পেস্ট করলে পুরো compose.yaml লেখা হয়ে যায়, docker compose up -d-এর জন্য প্রস্তুত।

docker compose-এ -it ও -d কী হয়?

-i ফ্ল্যাগ হয় stdin_open: true এবং -t হয় tty: true, তাই -it দুটোই সেট করে। -d ফ্ল্যাগের কোনো কী নেই, কারণ docker compose up -d প্রতিটি সার্ভিস ব্যাকগ্রাউন্ডে চালু করে। পরে চলমান কোনো সার্ভিসে যুক্ত হতে, সার্ভিসের নামসহ docker compose attach বা docker compose exec ব্যবহার করুন।

docker compose-এ --rm-এর কী হয়?

ফাইলে কিছুই না: Compose সার্ভিসগুলো টিকে থাকার জন্য তৈরি, তাই এমন কোনো কী নেই যা কন্টেইনার থামলে সেটি মুছে দেয়। একবারের কাজের জন্য সার্ভিসের নামসহ docker compose run --rm চালান, যা পরে সেই কন্টেইনারটি সরিয়ে দেয়। --rm বাদ পড়লে ফলাফলের নিচের নোটে তা জানানো হয়।

নেটওয়ার্কটি কেন external: true হিসেবে চিহ্নিত?

--network shop-net সহ একটি docker run আগে থেকেই বিদ্যমান একটি নেটওয়ার্ক ব্যবহার করে। এটিকে external চিহ্নিত করলে Compose নিজের নেটওয়ার্ক তৈরি না করে সেই নেটওয়ার্কে যোগ দেয়, ফলে দুইভাবে চালু হওয়া কন্টেইনারগুলো তখনও পরস্পরের সঙ্গে যোগাযোগ করতে পারে। Compose-কে নিজে নেটওয়ার্ক তৈরি ও পরিচালনা করতে দিতে চাইলে external: true লাইনটি মুছে দিন।

Compose ফাইলে পোর্ট কি উদ্ধৃতিচিহ্নের মধ্যে লেখা উচিত?

হ্যাঁ, পোর্টগুলো "8080:80"-এর মতো স্ট্রিং হিসেবে লিখুন। কিছু YAML রিডার কোলন দিয়ে যুক্ত দুটি সংখ্যাকে ভিত্তি-60 সংখ্যা হিসেবে ধরে, ফলে 22:22 হয়ে যেতে পারে 1342 এবং একটি SSH ম্যাপিং ভেঙে যেতে পারে। এই টুল প্রতিটি পোর্ট, এনভায়রনমেন্ট এন্ট্রি ও ভলিউম স্ট্রিং উদ্ধৃতিচিহ্নের মধ্যে রাখে, যাতে ফাইলটি সব জায়গায় একই অর্থ বহন করে।

docker compose-এর কি এখনও version কী দরকার?

না। Compose Specification version: কী-কে অপ্রচলিত ঘোষণা করেছে, এবং docker compose-এর সাম্প্রতিক সংস্করণগুলো এটি থাকলে সতর্কবার্তা দেখায়। এখানে তৈরি ফাইল সরাসরি services: দিয়ে শুরু হয়, তারপর কমান্ডে নামযুক্ত ভলিউম বা কাস্টম নেটওয়ার্ক থাকলে volumes: ও networks: আসে।

সূত্র

  • Docker Docs, docker container run (CLI reference)Every docker run flag and its meaning
  • Docker Docs, Compose file reference: servicesThe Compose key each flag maps to
  • Docker Docs, Compose file reference: volumesNamed volumes declared at the top level
  • Docker Docs, Compose file reference: networksExternal networks
  • POSIX.1-2024 Shell Command Language, 2.2 Quoting (The Open Group)How the pasted command is split into words

শেষ যাচাই 16 অক্টোবর, 2026।

হার ও নিয়ম বদলায়; কোনো অঙ্কের ওপর নির্ভর করার আগে সূত্রটি দেখে নিন।

এখনও আটকে আছেন? docker run থেকে docker compose কনভার্টার সম্পর্কে প্রশ্ন করুন আর যিনি জানেন তিনিই উত্তর দিতে পারেন। কোনো অ্যাকাউন্ট লাগবে না।

সম্পর্কিত টুল

সব ডেভেলপার টুল
Base64 এনকোড ও ডিকোডটেক্সট ও ফাইল Base64-এ এবং আবার ফেরত, URL-নিরাপদ মোড ও ছবির প্রিভিউ সহUnix টাইমস্ট্যাম্প কনভার্টারUnix টাইমস্ট্যাম্প থেকে তারিখ আর তারিখ থেকে টাইমস্ট্যাম্প, যেকোনো টাইম জোনেJSON থেকে TypeScriptএকটি JSON নমুনা থেকে TypeScript ইন্টারফেস বা টাইপ তৈরি করুনCSV থেকে JSONটেবিল প্রিভিউসহ CSV থেকে JSON এবং JSON থেকে CSV-তে রূপান্তর করুনYAML থেকে JSONYAML থেকে JSON এবং JSON থেকে YAML-এ রূপান্তর করুন, অ্যাংকর সমাধানসহURL এনকোডার / ডিকোডারটেক্সট ও URL পার্সেন্ট-এনকোড বা ডিকোড করুন, আর লিংকের প্রতিটি অংশ দেখুনসংখ্যা পদ্ধতি রূপান্তরকারীবাইনারি, অক্টাল, ডেসিমাল, হেক্স এবং 36 পর্যন্ত যেকোনো ভিত্তি, যেকোনো আকারে নির্ভুল, টু'জ কমপ্লিমেন্টসহColor ConverterHEX, RGB, HSL, HWB, OKLCH and CMYK in both directions, with a contrast check
এই টুলটি কি কাজে লেগেছে?
Omnikit

ছোট ছোট কাজ, আপনার ব্রাউজারেই। বিনামূল্যে, দ্রুত ও ব্যক্তিগত। ফাইল কখনো আপলোড হয় না।

ফাইল

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

ডেভ

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

অর্থ

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
গাইডপ্রশ্নপরিচিতিআমরা কীভাবে যাচাই করিআইন লাইব্রেরি (বেটা)গোপনীয়তাশর্তাবলিপ্রকাশ্য বিবৃতিযোগাযোগMore: Exam practice (UGC NET Paper 1)আপনার ব্রাউজারে চলে। কিছুই আপলোড হয় না। © 2026 Omnikit (theomnikit.com)