EQVPS

VPS-এ Docker কীভাবে ইনস্টল করবেন

সঠিক উপায়ে Ubuntu-তে Docker Engine ও Compose প্লাগইন ইনস্টল করুন — Docker-এর অফিসিয়াল রিপোজিটরি থেকে, পুরনো ডিস্ট্রো প্যাকেজ থেকে নয় — এরপর একটি টেস্ট কনটেইনার চালান এবং বুটে চালু হওয়ার জন্য সেট করুন। কয়েকটি কমান্ডে একটি কার্যকর কনটেইনার হোস্ট।

Docker একটি অ্যাপ ও তার প্রয়োজনীয় সবকিছু একটি কনটেইনারে প্যাকেজ করে, যা সবখানে একইভাবে চলে — VPS-এ সার্ভিস সেল্ফ-হোস্ট করার সবচেয়ে পরিষ্কার উপায়। Ubuntu ও Debian-এ একটাই সমস্যা হলো, ডিস্ট্রোর নিজস্ব রিপোজিটরির সংস্করণ প্রায়ই পুরনো এবং আধুনিক Compose প্লাগইন ছাড়া আসে। এর বদলে Docker-এর অফিসিয়াল রিপোজিটরি থেকে ইনস্টল করুন। পুরো প্রক্রিয়া এখানে দেওয়া হলো।

1. Docker-এর অফিসিয়াল রিপোজিটরি সেট করুন (Ubuntu)

sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
  https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

2. Docker Engine ও Compose ইনস্টল করুন

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

3. এটি চলছে এবং বুটে সক্রিয় তা নিশ্চিত করুন

sudo systemctl enable --now docker
sudo docker run --rm hello-world

hello-world কনটেইনারটি ডাউনলোড হয়, একটি সফলতার বার্তা প্রিন্ট করে এবং বেরিয়ে যায় — প্রমাণ যে ইঞ্জিন কাজ করছে।

4. (ঐচ্ছিক) sudo ছাড়াই Docker চালান

sudo usermod -aG docker $USER
# গ্রুপ কার্যকর হতে লগ আউট করে আবার লগ ইন করুন

কেবল আপনার বিশ্বস্ত ইউজারের জন্যই এটি করুন — docker-গ্রুপ অ্যাক্সেস কার্যত হোস্টে root-এর সমতুল্য।

একটি দ্রুত বাস্তব কনটেইনার

docker run -d --restart unless-stopped -p 8080:80 --name web nginx
# http://YOUR.SERVER.IP:8080 দেখুন

--restart unless-stopped-ই কনটেইনারকে রিবুটের পর ফিরিয়ে আনে।

সৎ সতর্কতা

পরবর্তী ধাপ

Docker ইনস্টল হয়ে গেলে প্রায় যেকোনো কিছু সেল্ফ-হোস্ট করতে পারবেন। দেখুন একটি IP-এর পেছনে একাধিক সার্ভিস সেল্ফ-হোস্ট করা, অথবা একটি RustDesk রিমোট-ডেস্কটপ সার্ভার এবং Uptime Kuma মনিটরিং-এর মতো নির্দিষ্ট Docker বিল্ড। সামনে একটি ডোমেইন ও HTTPS বসাতে, দেখুন nginx রিভার্স প্রক্সি কীভাবে সেট করবেন

FAQ

'apt install docker.io' নাকি Docker-এর রিপোজিটরি ব্যবহার করব?

বর্তমান সংস্করণের জন্য Docker-এর অফিসিয়াল রিপোজিটরি ব্যবহার করুন (নিচের ধাপগুলো)। ডিস্ট্রোর docker.io প্যাকেজ সুবিধাজনক কিন্তু প্রায়ই পিছিয়ে থাকে, আর আধুনিক 'docker compose' প্লাগইন অফিসিয়াল প্যাকেজের সঙ্গেই আসে। একটি দ্রুত, ব্যবহার-ও-ফেলে-দেওয়া বক্স হলে docker.io-ও কাজ করে।

'docker compose' আর 'docker-compose'-এর মধ্যে পার্থক্য কী?

পুরনো 'docker-compose' ছিল একটি আলাদা Python টুল (হাইফেনযুক্ত)। বর্তমানটি হলো 'docker compose' (স্পেসসহ) — Docker-এর সঙ্গে বান্ডলড একটি প্লাগইন। প্লাগইনটি ব্যবহার করুন; স্ট্যান্ডঅ্যালোন টুলটি লিগ্যাসি। নিচের মতো docker-compose-plugin ইনস্টল করলেই এটি পাবেন।

প্রতিবার sudo না টাইপ করে Docker কীভাবে চালাব?

আপনার ইউজারকে docker গ্রুপে যোগ করুন: 'sudo usermod -aG docker $USER', এরপর লগ আউট করে আবার লগ ইন করুন। মনে রাখুন এটি কার্যত কনটেইনারের মাধ্যমে root-স্তরের অ্যাক্সেস দেয়, তাই কেবল আপনার নিজের বক্সে বিশ্বস্ত ইউজারের জন্যই এটি করুন।

Docker-এর কত RAM প্রয়োজন?

Docker নিজে হালকা; গুরুত্বপূর্ণ হলো আপনি কী কনটেইনার চালান তা। একটি ছোট অ্যাপ বা দুটো 1 GB বক্সে আরামে চলে, আর ভারী স্ট্যাক (ডেটাবেস, একাধিক সার্ভিস) বেশি জায়গা চায়। কাজের চাপ অনুযায়ী VPS সাইজ করুন, Docker অনুযায়ী নয়।

রিবুটের পর আমার কনটেইনার কি টিকে থাকবে?

কেবল যদি আপনি সেভাবে বলে দেন। নিচের ধাপে Docker-এর সার্ভিস বুটে সক্রিয় করা হয়, আর '--restart unless-stopped' দিয়ে (বা Compose-এ সেই নীতি দিয়ে) শুরু করা কনটেইনার নিজে থেকেই ফিরে আসে। restart নীতি ছাড়া, রিবুটের পর কনটেইনার বন্ধ থেকে যায়।

মন্তব্য

এখনো কোনো মন্তব্য নেই। প্রথম হোন।

একটি মন্তব্য দিন

মন্তব্য প্রকাশের আগে মডারেট করা হয়।