−25%

Windows-এর বার্ষিক পেমেন্টে, ৩১ অক্টোবর পর্যন্ত। প্ল্যান দেখুন

EQVPS

Mastodon-এর জন্য VPS: নিজের ছোট সার্ভার

VPS-এ ছোট একটা Mastodon সার্ভার হোস্ট করুন: RAM আর ডিস্কের সৎ হিসাব, Docker দিয়ে ইনস্টল, SMTP রিলে দিয়ে ইমেইল আর মিডিয়া পরিষ্কার যাতে ডিস্ক না ভরে।

নিজের সোশ্যাল অ্যাকাউন্টের মালিক হওয়া ভালো ভাবনা, যতক্ষণ না বুঝতে পারেন অ্যাকাউন্টটা অন্য কারও সার্ভারে, তাদের নিয়ম আর আপটাইমের অধীনে থাকে। নিজের Mastodon সার্ভার এটা মেটায়: আপনার হ্যান্ডেল @you@your-domain, আর আপনি ছাড়া কেউ এটা বন্ধ করতে পারে না। সমস্যা হলো Mastodon ছোট অ্যাপ নয়। কীসে হাত দিচ্ছেন জানা ভালো।

এটা কার জন্য

এর চেয়ে বড় কিছুর জন্য আপনি এমন একটা সার্ভিস চালাচ্ছেন যাতে মডারেশনের দায়িত্ব, অপব্যবহারের রিপোর্ট আর আসল অবকাঠামো আছে। সেটা ভিন্ন আলোচনা।

এর আসলে কী লাগে

Mastodon একসাথে কয়েকটা প্রসেস চালায়: Rails ওয়েব অ্যাপ, ব্যাকগ্রাউন্ডে Sidekiq ওয়ার্কার, একটা স্ট্রিমিং সার্ভার, PostgreSQL আর Redis। ফেডারেশনের কারণে আপনি ঘুমালেও আপনার সার্ভার অন্য সার্ভার থেকে পোস্ট আর মিডিয়া আনতে থাকে।

সার্ভারপ্ল্যান
এক ইউজার, অল্প ফলোSmall-IP — 2 vCPU, 4 GB, মাসে $16
ছোট কমিউনিটি, সক্রিয় ফেডারেশনMedium-IP — 4 vCPU, 6 GB, মাসে $20

4 GB চলে তবে টানাটানি; আপনার ফলো করা কোনো জনপ্রিয় পোস্ট হাজার হাজার উত্তর পেলে Sidekiq-এর কিউ জমে যায়। 6 GB শ্বাস নেওয়ার জায়গা দেয়। আরেকটা সীমাবদ্ধতা ডিস্ক — নিচে মিডিয়ার অংশ দেখুন।

আপনার একটা ডোমেইন আর ডেডিকেটেড IP-ও লাগবে: অন্য সার্ভারগুলো পোর্ট 443-এ আপনার সার্ভারে পৌঁছায়।

Docker দিয়ে ইনস্টল

অফিশিয়াল রিপোজিটরিতে একটা docker-compose.yml আছে। Docker ইনস্টল করা নতুন Ubuntu 24.04 সার্ভারে:

git clone https://github.com/mastodon/mastodon.git
cd mastodon
git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)
touch .env.production
docker compose run --rm -v $(pwd)/.env.production:/opt/mastodon/.env.production \
  web bundle exec rake mastodon:setup
docker compose up -d

সেটআপ টাস্ক আপনার ডোমেইন, ডেটাবেস আর Redis সেটিংস (ডিফল্ট compose ফাইলের সাথে মেলে), ইমেইল সেটিংস আর প্রথম অ্যাডমিন অ্যাকাউন্ট জিজ্ঞেস করে। সবকিছু .env.production-এ লেখে। যে ট্যাগ নিয়েছেন তার রিলিজ নোট পড়ুন — বড় সংস্করণের মাঝে ধাপ মাঝে মাঝে বদলায়।

Mastodon-এ dist/nginx.conf-এ একটা nginx টেমপ্লেট আছে। এটা /etc/nginx/sites-available/-এ কপি করুন, ডোমেইন বদলান আর certbot দিয়ে সার্টিফিকেট নিন। আমাদের reverse proxy আর ডোমেইন গাইড দুটোই দেখায়।

ইমেইল: রিলে ব্যবহার করুন

Mastodon নিশ্চিতকরণ আর পাসওয়ার্ড রিসেটের ইমেইল পাঠায়। আমাদের সার্ভারে পোর্ট 25 আর 465 বন্ধ, তাই Mastodon-কে পোর্ট 587 দিয়ে কোনো বাইরের ট্রানজ্যাকশনাল ইমেইল সরবরাহকারীর দিকে পাঠান:

SMTP_SERVER=smtp.your-provider.example
SMTP_PORT=587
SMTP_LOGIN=apikey
SMTP_PASSWORD=your-smtp-password
SMTP_FROM_ADDRESS=notifications@your-domain.example

সত্যি বলতে রিলে আপনি এমনিতেই চাইতেন। একেবারে নতুন সার্ভার IP থেকে যাওয়া ইমেইল প্রায়ই স্প্যামে পড়ে; রিলের সেই সুনাম আছে যা আপনার এখনও নেই।

মিডিয়া: ডিস্কখেকো

আপনার সার্ভার যে অ্যাকাউন্টগুলো দেখে তাদের প্রতিটি ছবি আর ভিডিও লোকালি ক্যাশ হয়। ব্যস্ত সার্ভারে এটা সপ্তাহে গিগাবাইট। পুরোনো রিমোট মিডিয়া নিয়মিত পরিষ্কার করুন:

docker compose exec web tootctl media remove --days 7
docker compose exec web tootctl preview_cards remove --days 30

এগুলো দৈনিক cron জবে রাখুন। সার্ভার বড় হলে .env.production-এর S3_* সেটিংস দিয়ে মিডিয়া S3-সামঞ্জস্যপূর্ণ অবজেক্ট স্টোরেজে সরান — তখন VPS ডিস্কে শুধু ডেটাবেস থাকে।

রক্ষণাবেক্ষণ

টিম চ্যাটের জন্য হালকা কিছু চান? হয়তো একটা Matrix সার্ভার বেশি মানাবে।

স্থাপন করতে প্রস্তুত? ক্রিপ্টোতে পরিশোধ করুন, KYC ছাড়াই — প্রায় এক মিনিটে লাইভ।

এখনই ডেপ্লয় করুন →

সাধারণ প্রশ্ন

একটা Mastodon সার্ভারের কত RAM লাগে?

এক ইউজার বা ছোট সার্ভারের জন্য 4 GB বাস্তবসম্মত ন্যূনতম আর 6 GB আরামদায়ক। Mastodon একসাথে ওয়েব প্রসেস, Sidekiq ওয়ার্কার, PostgreSQL আর Redis চালায়, আর ফেডারেশন Sidekiq-কে তখনও ব্যস্ত রাখে যখন কেউ পোস্ট করছে না।

Mastodon-এর কেন ডেডিকেটেড IP লাগে?

অন্য সার্ভারগুলো পোর্ট 443-এ HTTPS দিয়ে আপনার সার্ভারে পোস্ট পৌঁছায়, আর মানুষ আপনার সার্ভার ব্রাউজারে খোলে। এর জন্য আপনার নিজের IP-তে 443-এর আগত ট্রাফিক লাগে, যা NAT প্ল্যানে নেই।

Mastodon থেকে কীভাবে ইমেইল পাঠাব?

পোর্ট 587-এ SMTP দিয়ে কোনো বাইরের ট্রানজ্যাকশনাল ইমেইল সরবরাহকারীর মাধ্যমে। আমাদের সার্ভারে পোর্ট 25 আর 465 বন্ধ, আর রিলে এমনিতেই একেবারে নতুন IP-র চেয়ে অনেক ভালো ডেলিভারি দেয়।

আমার ডিস্ক এত দ্রুত ভরছে কেন?

আপনার সার্ভার যে অ্যাকাউন্টগুলো দেখে সবগুলোর মিডিয়া ক্যাশ করে। 'tootctl media remove --days 7' নিয়মিত চালান, বা মিডিয়া S3-সামঞ্জস্যপূর্ণ অবজেক্ট স্টোরেজে সরান।

পরে কি ডোমেইন বদলানো যায়?

না। ডোমেইন পুরো ফেডিভার্সে প্রতিটি অ্যাকাউন্টের পরিচয়ের অংশ। প্রথম অ্যাকাউন্ট তৈরির আগে ভেবেচিন্তে বাছুন।

মন্তব্য

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

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

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