VPS-এ Cloudron বনাম CasaOS বনাম Coolify: কোনটি ভালো?
Cloudron, CasaOS ও Coolify-এর install command, TLS, backup, খরচ এবং RAM overhead তুলনা করুন। Ubuntu 24.04 VPS-এ কোন panel আপনার জন্য উপযুক্ত, তা জানুন।
আপনি যা তৈরি করছেন
আপনি শুধু একটি tool install করছেন না; একই সঙ্গে একটি tool বেছে নিচ্ছেন। তিনটি panel একটি খালি VPS-কে point-and-click app host-এ পরিণত করার প্রতিশ্রুতি দেয়: Cloudron, CasaOS, এবং Coolify। এই guide-এ প্রতিটিকে একই fresh Ubuntu 24.04 server-এ ব্যবহার করা হবে, প্রথমে একটি app install করা হবে, তারপর এমন বিষয়গুলো বিস্তারিতভাবে পরীক্ষা করা হবে যেগুলো সাধারণত screenshot-এ দেখা যায় না: TLS, backup, update, memory cost এবং পরে platform ছেড়ে বের হওয়া কতটা কঠিন। শেষে আপনি বুঝতে পারবেন কোনটি আপনার জন্য উপযুক্ত, অথবা সৎ উত্তরটি হবে: "কোনোটিই নয়, শুধু Docker Compose ব্যবহার করুন।"
এর কোনোটিই magic নয়। তিনটির নিচেই একই Docker Engine রয়েছে, যেটি আপনি হাতে পরিচালনা করতে পারেন। একটি panel আপনার কাছ থেকে অর্থ, RAM বা lock-in-এর বিনিময়ে মূলত চারটি কাজ করে দেয়: one-click app install, automatic TLS certificate, scheduled backup এবং user management। এই চারটি সুবিধার জন্য যদি অতিরিক্ত overhead গ্রহণ করা আপনার কাছে যুক্তিসঙ্গত হয়, তাহলে panel ব্যবহার করা সার্থক। আপনি যদি এক বা দুটি service চালান এবং server-এ ঠিক কী চলছে তা নিজে জানতেই পছন্দ করেন, তাহলে আগে "তিনটিই বাদ দিন" section পড়ুন এবং অপ্রয়োজনীয় ঝামেলা এড়ান।
সবার জন্য প্রয়োজনীয় পূর্বশর্ত এবং বাস্তব সীমাবদ্ধতা
তিনটিই container virtualisation নয়, KVM VPS ধরে নেয়। Docker-এর জন্য প্রকৃত kernel প্রয়োজন, এবং Cloudron সরাসরি OpenVZ ও LXC প্রত্যাখ্যান করে। systemd-detect-virt দিয়ে পরীক্ষা করুন: kvm বা qemu ঠিক আছে, openvz বা lxc ঠিক নয়। KVM plan-এ কমান্ডটি kvm দেখাবে, আর bare metal-এ none দেখাবে; দুটির যেকোনো একটির অর্থ হলো আপনি এগিয়ে যেতে পারেন।
এর বাইরে প্রয়োজনীয় সংখ্যাগুলো ভিন্ন, এবং পছন্দ নির্ধারণে এটিই প্রথম বিবেচ্য বিষয়।
- RAM। CasaOS 1GB RAM-এ স্বচ্ছন্দে চলে; এটি Raspberry Pi hardware-এ ব্যবহারের জন্য তৈরি হয়েছে এবং এখনও হালকা। Coolify-এর জন্য ন্যূনতম 2GB RAM ও দুইটি CPU core প্রয়োজন, যার মধ্যে প্রায় 600 MB Coolify নিজেই ব্যবহার করে। Cloudron-এর ন্যূনতম 2GB প্রয়োজন, তবে 4GB-এ এটি বাস্তবে আরও ভালো চলে, কারণ একটি অ্যাপ install করার আগেই এটি mail server ও database চালায়।
- আপনার নিয়ন্ত্রণাধীন একটি domain এবং DNS। Cloudron ও Coolify—দুটিরই কার্যকর DNS-সহ একটি প্রকৃত domain প্রয়োজন। Cloudron-এর ক্ষেত্রে DNS provider-এর API access থাকলে ভালো, যাতে এটি নিজেই record ও wildcard certificate তৈরি করতে পারে। CasaOS সরাসরি bare IP-এ চলবে, কিন্তু সে ক্ষেত্রে কোনো TLS পাবেন না।
- Port। HTTP ও HTTPS-এর জন্য Cloudron ও Coolify-এর 80 এবং 443 port খোলা থাকতে হবে। CasaOS plain HTTP-তে dashboard পরিবেশন করে, তাই এর শুধু port 80 প্রয়োজন। Coolify অতিরিক্তভাবে 8000 port-এ dashboard পরিবেশন করে এবং realtime channel-এর জন্য 6001, browser-এর terminal-এর জন্য 6002 ব্যবহার করে। প্রতিটির ক্ষেত্রেই SSH-এর জন্য port 22 খোলা রাখুন।
শুরু করার আগে DNS-কে server-এর দিকে নির্দেশ করুন। কোনো panel যদি নিজের hostname resolve করতে না পারে, তাহলে certificate request করতে পারবে না। ফলে software-এর পরিবর্তে DNS debug করতেই প্রথম এক ঘণ্টা চলে যাবে। server IP-তে একটি A record নির্দেশ করুন, এবং Coolify-এর জন্য একটি wildcard record (*.apps.example.com) যোগ করুন, যাতে প্রতিটি deployed app নিজস্ব subdomain পায়।
Cloudron: পরিশীলিত, নির্দিষ্ট মতাদর্শের appliance
এটি কী। Cloudron একটি commercial platform, যা একটি সম্পূর্ণ server-কে managed appliance-এ রূপান্তর করে। এটি নিজস্ব reverse proxy, database এবং mail stack চালায়। এর সঙ্গে packaged app-এর একটি curated App Store থাকে (Nextcloud, WordPress, Gitea, Mattermost এবং আরও অনেক কিছু)। যাঁরা automatic update, automatic certificate এবং automatic backup-সহ তাঁদের app managed অবস্থায় রাখতে চান এবং এর জন্য অর্থ দিতে প্রস্তুত, Cloudron তাঁদের জন্য।
ইনস্টল। Cloudron একটি clean box চায় এবং server-এর সম্পূর্ণ নিয়ন্ত্রণ নিয়ে নেয়। একটি fresh Ubuntu 24.04 (Noble) server-এ নিচের command চালান। অন্য কিছু রাখবেন না:
wget https://cloudron.io/cloudron-setup
chmod +x cloudron-setup
sudo ./cloudron-setupScriptটি Docker, nginx, একটি database এবং mail stack ইনস্টল করে, তারপর server reboot করে। server ফিরে এলে https://<your-ip> খুলুন, temporary self-signed certificate গ্রহণ করুন এবং browser-এ setup শেষ করুন। আপনার domain নির্ধারণ করুন, DNS provider বেছে নিন, তারপর এটি my.example.com-এ নিজস্ব dashboard তৈরি করবে।
প্রথম app যোগ করা। Dashboard-এ App Store খুলুন। যেমন, Nextcloud-এ click করুন, files.example.com subdomain বেছে নিন এবং Install চাপুন। Cloudron DNS record তৈরি করে, Let's Encrypt certificate-এর জন্য অনুরোধ করে, database provision করে, single sign-on সংযুক্ত করে এবং backup schedule করে। Config file-এ আপনাকে কিছুই পরিবর্তন করতে হয় না। Cloudron-এর মূল সুবিধা এটাই, এবং এটি সেই কাজ ঠিকভাবে করে।
TLS এবং backup। এই তিনটির মধ্যে Cloudron-এর ব্যবস্থা সবচেয়ে শক্তিশালী। প্রতিটি app subdomain স্বয়ংক্রিয় Let's Encrypt certificate পায় এবং Cloudron সেটি আপনার জন্য renew করে। Backup আগে থেকেই schedule করা থাকে এবং built in। এগুলো local directory, S3 বা অন্য remote storage-এ রাখা যায়। প্রতিটি app আলাদাভাবে restore করা যায়। এমনকি এক click-এ কোনো app নতুন subdomain-এ clone করাও যায়।
খরচ ও licensing, শুরু করার আগে এটি পড়ুন। Cloudron একটি capped free tier-সহ paid product: free plan-এ two apps অনুমোদিত। তৃতীয় app ইনস্টল করলে paywall-এ পৌঁছে যাবেন। Paid subscription (Pro বা Max, monthly বা yearly billing, উভয়টিতেই unlimited apps) নিলে আরও সুবিধা unlock হয়। Cloudron সম্পর্কে এটিই সবচেয়ে গুরুত্বপূর্ণ তথ্য। এটি polished কারণ এটি একটি business। Free tier-টি বাড়তে থাকা stack-এর স্থায়ী আবাসনের চেয়ে extended trial-এর কাছাকাছি।
ব্যর্থতার ধরন, clean-box rule। আগে থেকেই কোনো service চলা server-এ Cloudron ইনস্টল করার চেষ্টা করলে setup কোনো পরিবর্তন করার আগেই বন্ধ হয়ে যায়:
Error: Some packages like nginx/docker/nodejs are already installed. Cloudron requires
specific versions of these packages and will install them as part of its installation.
Please start with a fresh Ubuntu install and run this script again.এর কারণ শুধু অপ্রয়োজনীয় কঠোরতা নয়। Cloudron nginx, Docker এবং Node-এর নির্দিষ্ট version ধরে রাখে এবং এগুলোকে গভীরভাবে integrate করে। তাই আপনার নিজস্ব copy-গুলোর সঙ্গে এটি coexist করতে পারে না। সমাধান হলো একটি fresh Ubuntu 24.04 image এবং অন্য কিছু নয়। কোনো web server নয়, Docker নয়, এমনকি হাতে configure করা firewall-ও নয়। ভুল image boot করলে setup supported Ubuntu LTS নয় এমন কিছু গ্রহণ করবে না। সমর্থিত version হলো x86-64-এ 22.04, 24.04 বা 26.04। ARM, LXC এবং OpenVZ সরাসরি unsupported। Cloudron 10 (September 2026) থেকে নতুন installation-এর জন্য Ubuntu 26.04 default। তাই আজ scratch থেকে শুরু করলে এই image-ই বেছে নিন।
দ্বিতীয় ব্যর্থতার ধরন, wildcard certificate-এর জন্য DNS API প্রয়োজন। Setup-এর সময় Cloudron-কে API token না দিয়ে "Manual" DNS option বেছে নিলে এটি আপনার হয়ে record বা wildcard certificate তৈরি করতে পারবে না। এরপর প্রতিটি নতুন app-এর ক্ষেত্রে certificate issue হওয়ার আগে আপনাকে হাতে DNS record যোগ করতে হবে। Dashboard সেই record-এর জন্য অপেক্ষা করে থাকবে। Cloudflare, Route 53, DigitalOcean এবং অন্যান্য supported DNS provider-এ Cloudron-কে API access দিন। তাহলে পুরো প্রক্রিয়াটি এক click-এ সম্পন্ন হবে।
CasaOS: বিনামূল্যের home-lab dashboard
এটি কী। IceWhale-এর CasaOS হলো একটি বিনামূল্যের open-source dashboard, যা Docker-এর ওপর কাজ করে এবং আপনাকে একটি home screen, app store ও file manager দেয়। এটি home-server পরিবেশ থেকে তৈরি হয়েছে। তাই এর মূল লক্ষ্য home-lab: দ্রুত setup, সহজ UI এবং কম আনুষ্ঠানিকতা। যারা কাউকে অর্থ না দিয়ে Docker-এর জন্য আরও সুন্দর interface চান, এটি তাদের জন্য।
Install। একটি command-ই যথেষ্ট, এবং এটি clean box দাবি করে না:
curl -fsSL https://get.casaos.io | sudo bashInstaller একাধিক systemd service (casaos, casaos-gateway, casaos-app-management এবং অন্যান্য) যোগ করে। Browser খোলার আগে gateway চালু হয়েছে কি না নিশ্চিত করুন:
systemctl status casaos-gatewayচালু হলে dashboard পাওয়া যাবে http://<your-ip>-এ (plain HTTP, port 80)। একটি local account তৈরি করলেই ব্যবহার শুরু করতে পারবেন।
প্রথম app যোগ করা। App Store খুলে একটি app বেছে Install-এ click করুন। CasaOS আড়ালে একটি Docker Compose project তৈরি করে এবং app-টিকে host port-এ প্রকাশ করে, যেমন http://<your-ip>:8080। এর store-এ সাধারণ home-server app-গুলোর তালিকা থাকে। তাই VPS-এ Jellyfin media server অথবা self-hosted Immich photo library কয়েক click-এই চালু করা যায়। আপনি যদি এখনও photo server নির্বাচন না করে থাকেন, তাহলে PhotoPrism ও Immich-এর পার্থক্য নির্ধারণকারী RAM floor এবং phone app আগে পড়ে নিন। কারণ 1GB CasaOS box-এ এই সিদ্ধান্তেই নির্ধারিত হয় app আদৌ চলবে কি না। আপনি ইচ্ছামতো যেকোনো docker-compose.yaml-ও import করতে পারেন। এটাই এর মূল শক্তি: app-গুলো proprietary format নয়, সাধারণ container।
TLS এবং backup: দুর্বল দিক। এখানেই "free" ব্যবহারের সীমাবদ্ধতা দেখা যায়। CasaOS default হিসেবে সবকিছু plain HTTP-তে পরিবেশন করে, নিজের dashboard-সহ। এতে built-in Let's Encrypt নেই, scheduled backup-ও নেই। আপনার data /DATA-এর অধীনে Docker volume-এ থাকে। Backup নেওয়ার দায়িত্ব আপনার (cron-এ চালানো restic অথবা tar)।
ব্যর্থতার ধরন, TLS নেই এবং কোনো সতর্কতাও দেখা যায় না। কোনো error দেখা যায় না। আপনি একটি app install করে http://<your-ip>:8080 খুললে এটি কাজ করবে, তবে encrypted নয় এমন connection-এ। Browser এটিকে "Not Secure." হিসেবে চিহ্নিত করবে। Password এবং session cookie cleartext অবস্থায় network-এর মধ্য দিয়ে যাবে। আরও গুরুতর বিষয় হলো, CasaOS dashboard-এ বাস্তব remote-code-execution vulnerability ছিল (CVE-2023-37265 এবং CVE-2023-37266; একটি authentication bypass, যা chain হয়ে সম্পূর্ণ host compromise ঘটাতে পারত)। তাই ওই HTTP port সরাসরি Internet-এ প্রকাশ করা প্রকৃত নিরাপত্তাঝুঁকি, শুধু পছন্দের বিষয় নয়। সমাধান হলো CasaOS-কে কখনো সরাসরি Internet-এ প্রকাশ না করা। সামনে TLS termination করা একটি reverse proxy বসান, যেমন Certbot দিয়ে Let's Encrypt certificate-সহ nginx, Caddy অথবা Cloudflare Tunnel। তারপর local network-এর মধ্যে থাকা CasaOS-এ অনুরোধ forward করুন। মনে রাখবেন, CasaOS ইতিমধ্যে port 80-এ bind করে। তাই আগে CasaOS-কে অন্য port-এ সরানো না হলে proxy এবং CasaOS একই port ব্যবহারের জন্য পরস্পরের সঙ্গে সংঘর্ষে পড়বে।
খরচ। এটি সত্যিই বিনামূল্যে এবং স্থায়ীভাবে বিনামূল্যে, কোনো app cap নেই। তবে operations-এর দায়িত্ব আপনার: TLS, backup এবং hardening আপনাকেই পরিচালনা করতে হবে।
Coolify: self-hosted PaaS
এটি কী। Coolify একটি open-source, self-hosted platform-as-a-service। এটি আপনার নিজের server-এ Heroku বা Vercel-এর মতো কাজ করে। এর মূল একক হলো “এই packaged app-টি install করুন” নয়, বরং “এই Git repository-টি deploy করুন”। একটি repo সংযুক্ত করলে Coolify সেটি Nixpacks বা আপনার নিজস্ব Dockerfile ব্যবহার করে build ও deploy করে এবং প্রতিটি push-এর পরে redeploy করে। এতে one-click database ও service-ও রয়েছে। যারা নিজেদের code deploy করেন এবং PaaS ভাড়া না নিয়ে push-to-deploy চান, Coolify তাদের জন্য তৈরি।
Install।
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bashএই script Docker install করে এবং Coolify-এর নিজস্ব container stack চালু করে। পরবর্তী ধাপে যাওয়ার আগে এগুলো healthy কি না পরীক্ষা করুন:
docker ps --format 'table {{.Names}}\t{{.Status}}'coolify, coolify-db, coolify-redis, coolify-realtime এবং coolify-proxy—সবগুলোর status হিসেবে Up দেখা উচিত। Dashboard পাওয়া যাবে http://<your-ip>:8000-এ। অবিলম্বে আপনার admin account তৈরি করুন, কারণ প্রথম account তৈরি না হওয়া পর্যন্ত registration page খোলা থাকে এবং যে ব্যক্তি আগে সেটিতে পৌঁছাবে, সে server নিয়ন্ত্রণ করতে পারবে। এরপর আপনার instance domain নির্ধারণ করুন এবং একটি wildcard DNS record (*.example.com বা *.apps.example.com) server-টির দিকে point করুন, যাতে Coolify প্রতিটি deployed app-কে আলাদা subdomain দিতে পারে।
প্রথম app যোগ করা। একটি Git source (GitHub, GitLab বা সাধারণ repo URL) সংযুক্ত করুন, branch নির্বাচন করুন, domain নির্ধারণ করুন এবং deploy করুন। Coolify-এর built-in Traefik proxy subdomain route করে এবং certificate-এর জন্য request পাঠায়। আগে থেকেই প্রস্তুত software-এর জন্য Services catalogue কয়েকটি click-এ service deploy করে। আপনি অন্যথায় হাতে যে n8n workflow-automation stack সংযুক্ত করতেন, সেটিও একটি entry; একইভাবে status-page monitoring-এর জন্য Uptime Kuma-ও একটি entry।
TLS এবং backup। bundled Traefik-এর মাধ্যমে প্রতিটি app-এর জন্য স্বয়ংক্রিয় Let's Encrypt certificate তৈরি হয়। Backup database-কেন্দ্রিক: Postgres এবং MySQL dump S3-compatible storage-এ schedule করা যায়। পুরো instance-এর backup—অর্থাৎ /data/coolify-এর অধীনে থাকা Coolify configuration—আরও manual। তাই এটি নিজে export করে সংরক্ষণ করুন।
খরচ এবং licensing। self-hosted edition সম্পূর্ণ open-source এবং free; app-এর কোনো সীমা নেই। ঐচ্ছিক Coolify Cloud (paid) control plane আপনার হয়ে host করে, আর আপনার app-গুলো আপনার নিজের server-এই চলে। এটি সুবিধাজনক, কিন্তু বাধ্যতামূলক নয়।
সমস্যার ধরন: app deploy হয়, কিন্তু তার domain load হয় না। http://<ip>:8000-এ dashboard ঠিকমতো কাজ করছে, build সফল হয়েছে, কিন্তু app-এর নিজস্ব URL connection error অথবা Traefik-এর 404 page not found দেখাচ্ছে। এর কারণ app নয়; proxy বা DNS-এ সমস্যা আছে। সাধারণত দুটি কারণ দেখা যায়। প্রথমত, proxy start করার সময় port 80 বা 443 আগে থেকেই ব্যবহৃত ছিল। ফলে Docker error-সহ এর container বন্ধ হয়ে গেছে:
Error response from daemon: driver failed programming external connectivity on endpoint coolify-proxy: Bind for 0.0.0.0:443 failed: port is already allocatedদ্বিতীয়ত, hostname server-এ resolve হচ্ছে না। App যদি wildcard-generated subdomain ব্যবহার করে, wildcard DNS record অনুপস্থিত হতে পারে। অথবা app যদি custom domain ব্যবহার করে, সেই domain-এর server-টির দিকে point করা নিজস্ব DNS record নেই। ফলে Traefik ওই hostname-এর জন্য কোনো request পায় না। কিন্তু Coolify-তে পুরো server card-এ যদি "Server is not reachable" লেখা থাকে, তাহলে এটি আলাদা সমস্যা। Coolify server-এর Docker socket-এর সঙ্গে যোগাযোগ করতে পারছে না। সাধারণত Docker daemon বন্ধ থাকা বা SSH key নষ্ট হওয়াই এর কারণ। অনুমান করার আগে log-এ প্রকৃত কারণ দেখুন:
docker logs coolify-proxy --tail 100Proxy page থেকে সমস্যাটি ঠিক করুন। Restart Proxy চাপুন, অথবা proxy configuration default-এ reset করে আবার start করুন। এরপর প্রায় দুই মিনিট অপেক্ষা করুন, যাতে এটি স্থিতিশীল হতে পারে। port 8000 শুধু আপনার নিজের IP থেকে reachable রাখুন। Proxy-তে সমস্যা হলে সাময়িকভাবে এটি আবার খুলতে পারেন। এটি সবার জন্য খোলা রাখবেন না, কারণ এটি সাধারণ HTTP-তে dashboard পরিবেশন করে। Coolify-এর নিজস্ব documentation অনুযায়ী, dashboard তার নিজস্ব domain-এর মাধ্যমে পরিবেশিত হলে port 8000, 6001 এবং 6002 বন্ধ করা যায়।
একই VPS-এ resource overhead
একই 4GB সার্ভারে কোনো বাস্তব workload deploy করার আগে idle অবস্থায় এই পরিমাপ করা হয়েছে। একটি মাত্র সংখ্যার ওপর নির্ভর না করে free -m এবং docker stats --no-stream দিয়ে নিজের সিস্টেম পরীক্ষা করুন, কারণ আপনার app mix অনুযায়ী মোট ব্যবহার পরিবর্তিত হবে।
- CasaOS সবচেয়ে হালকা। এর panel কয়েকটি ছোট Go service নিয়ে গঠিত। আপনার চালানো container-এর অতিরিক্ত প্রায় 150 থেকে 300 MB overhead ধরুন।
- Coolify নিজস্ব কয়েকটি support container চালায়—app, একটি Postgres, একটি Redis, একটি realtime service এবং Traefik। তাই কোনো কিছু deploy করার আগেই idle অবস্থায় এর ব্যবহার প্রায় 600 MB থেকে 1 GB থাকে।
- Cloudron idle অবস্থায় সবচেয়ে বেশি resource ব্যবহার করে। কারণ আপনি সেগুলো ব্যবহার না করলেও এটি নিজস্ব nginx, database, mail stack এবং monitoring চালায়। Idle অবস্থায় 1 থেকে 1.5 GB বরাদ্দ রাখুন। এ কারণেই এটি minimum 2GB চায় এবং 4GB-এ বেশি স্বাচ্ছন্দ্যে চলে।
ছোট 2GB VPS-এ CasaOS বাস্তব app চালানোর জন্য সবচেয়ে বেশি resource খালি রাখে, আর Cloudron সবচেয়ে কম রাখে। আপনার পরিকল্পনা যদি 2GB VPS নিয়ে Cloudron-এর mail server চালানো হয়, তাহলে সার্ভার upgrade করার পরিকল্পনা করুন।
আপডেট, ব্যাকআপ এবং lock-in-এর তুলনা
আপডেট। Cloudron আপনার জন্য একটি পরীক্ষিত schedule অনুযায়ী platform এবং প্রতিটি app আপডেট করে। এতে আপনার পরিশ্রম সবচেয়ে কম এবং নির্দেশিত সহায়তা সবচেয়ে বেশি। Coolify-এর নিজস্ব dashboard থেকে একটি button ব্যবহার করে নিজেকেই আপডেট করা যায়। CasaOS তার install script অথবা apt-এর মাধ্যমে panel আপডেট করে। তবে আপনি যে app-গুলো install করেছেন, সেগুলো pull করে restart করার দায়িত্ব আপনার।
Lock-in, যা দ্বিতীয় বছরে সমস্যার কারণ হয়। CasaOS-এ lock-in সবচেয়ে কম। এর app-গুলো সাধারণ Compose project। তাই docker-compose.yaml এবং /DATA-এর অধীনে থাকা volume অন্য host-এ copy করে সেখান থেকে কাজ চালিয়ে যেতে পারেন। Coolify মাঝামাঝি অবস্থানে আছে। আপনার deploy-গুলো নিজস্ব Dockerfile এবং repo ব্যবহার করে। তবে তাদের configuration Coolify-এর database-এ থাকে। তাই host পরিবর্তন করলে অন্য পাশে project-গুলো পুনরায় তৈরি করতে হয়। Cloudron-এ lock-in সবচেয়ে বেশি। app-গুলো Cloudron-packaged। আপনার data তার উন্নত backup ব্যবস্থার মাধ্যমে সহজেই সরানো যায়। কিন্তু packaging সরানো যায় না। তাই destination platform-এ পুনরায় deploy করতে হয়। Data portable, কিন্তু plumbing portable নয়।
কোনটি বেছে নেওয়া উচিত
সংক্ষেপে, তারপর বিকল্প পথের কথা। আপনি যদি তিনটির মধ্যে সবচেয়ে কম হাতে-কলমে পরিচালনা করতে হয় এমন server চান, একাধিক packaged app চালান, এবং managed TLS, backup ও update-এর জন্য বার্ষিক fee দিতে প্রস্তুত থাকেন, তাহলে Cloudron বেছে নিন। এটি যদি আপনার নিজস্ব network বা reverse proxy-এর পেছনে থাকা একটি home lab হয়, Docker ব্যবহারের জন্য সহজ interface চান, এবং কোনো খরচ করতে না চান, তাহলে CasaOS বেছে নিন। আপনি যদি Git থেকে নিজের code deploy করেন এবং hosted PaaS-এর খরচ ছাড়াই automatic TLS-সহ push-to-deploy চান, তাহলে Coolify বেছে নিন। এই তিনটির কোনোটিই আপনার প্রয়োজনের সঙ্গে না মিললে, পরের section-এ সরাসরি উত্তরটি দেওয়া হয়েছে।
শুধু তিনটিই এড়িয়ে চলুন যদি...
আপনার ব্যবহারের পরিসর সম্পর্কে বাস্তবসম্মত থাকুন। আপনি যদি মাত্র একটি বা দুটি অ্যাপ চালান, অথবা আপনার সার্ভারে ঠিক কী চলছে তা নিজে বুঝে নিয়ন্ত্রণ করতে চান, তাহলে management panel এড়িয়ে চলুন। ছোট ও স্থিতিশীল stack-এর ক্ষেত্রে অতিরিক্ত overhead এবং vendor lock-in-এর মূল্য সঙ্গত নয়। নিজে পরিচালনার পদ্ধতিতে আপনার নিজস্ব Compose file-এর সামনে একটি reverse proxy থাকে: একাধিক Docker Compose অ্যাপের সামনে automatic TLS-সহ Traefik ব্যবহার করলে panel-এর ভার ছাড়াই এক-ক্লিকের সমতুল্য HTTPS পাওয়া যায়, আর আপনি এমন একটি cron-নির্ধারিত restic job দিয়ে backup করেন, যার কাজ আপনি সত্যিই বোঝেন।
তুলনার জন্য Traefik label-যুক্ত একটি ন্যূনতম service
services:
whoami:
image: traefik/whoami
labels:
- traefik.enable=true
- traefik.http.routers.whoami.rule=Host(`whoami.example.com`)
- traefik.http.routers.whoami.tls.certresolver=le
networks: [web]
networks:
web:
external: trueTraefik ওই label-গুলো পড়ে, hostname অনুযায়ী অনুরোধ পাঠায় এবং certificate সংগ্রহ করে: panel যে কাজটি করে, সেটিই কয়েকটি পড়ে বোঝা যায় এমন লাইনে করা হয়।
শুধু একটি প্রধান অ্যাপের ক্ষেত্রে বিষয়টি আরও স্পষ্ট: TLS এবং নিজস্ব backup routine-সহ Docker-এ Nextcloud install করতে একটি Compose file এবং একটি certificate-ই যথেষ্ট। এটি চালানোর জন্য সম্পূর্ণ appliance স্থাপন করলে খরচ হবে, কিন্তু অতিরিক্ত কোনো সুবিধা পাওয়া যাবে না। আপনি কীভাবে চালাবেন তা ঠিক করার আগে যদি এখনও কী চালাবেন তা নির্ধারণ করছেন, তাহলে 2026 সালে self-hosting করার মতো বিষয়গুলোর guide দিয়ে শুরু করাই ভালো।
FAQ
আমার কি self-hosting panel আদৌ দরকার?
শুধু তখনই দরকার, যদি একাধিক অ্যাপের ক্ষেত্রে panel যে চারটি কাজ স্বয়ংক্রিয় করে সেগুলো আপনার জন্য গুরুত্বপূর্ণ হয়: one-click install, automatic TLS, scheduled backup এবং user management। এক বা দুটি service-এর জন্য Traefik-এর পেছনে সাধারণ Docker Compose ব্যবহার করলেই অনেক কম overhead এবং কোনো lock-in ছাড়াই একই TLS কাজ করা যায়। আপনি অনেক অ্যাপ চালালে এবং panel-এর RAM খরচের চেয়ে আপনার সময়ের মূল্য বেশি হলে panel ব্যবহার করা সার্থক।
beginner-এর জন্য কোন panel সবচেয়ে ভালো?
যে home lab hostile Internet-এর কাছে exposed নয়, সেখানে CasaOS দিয়ে শুরু করা সবচেয়ে সহজ: একটি command-এই এটি install হয় এবং friendly UI দেয়, কোনো bill দিতে হয় না। তবে কিছু Internet-এ expose করার আগে সামনে TLS-terminating reverse proxy বসাতেই হবে, কারণ এটি plain HTTP ব্যবহার করে। Managed TLS এবং backup নিজে সামলাতে চাইলে, এবং এর জন্য অর্থ দিতে রাজি থাকলে, দুই-app free limit-এর মধ্যে Cloudron সবচেয়ে বেশি সহায়তা দেয়।
Cloudron কি free?
আংশিকভাবে। Free tier-এ two apps চালানো যায়, যা পরীক্ষামূলক ব্যবহার বা খুব ছোট setup-এর জন্য যথেষ্ট। এর বেশি হলে Cloudron paid subscription হিসেবে কাজ করে এবং মাসিক বা বার্ষিক billing হয়; paid tier-এ unlimited apps থাকে। এটি capped free plan-সহ একটি commercial product, free software নয়। আপনার stack বড় হলে এর জন্য budget রাখুন।
আমার existing apps-এর পাশে কি এই panel-গুলো চালাতে পারি?
Cloudron-এর ক্ষেত্রে পারবেন না। এটি clean Ubuntu box প্রয়োজন এবং nginx, Docker বা Node আগে থেকেই install থাকলে abort করে, কারণ এটি পুরো machine পরিচালনা করে। CasaOS এবং Coolify তুলনামূলকভাবে বেশি উপযোগী, কারণ তারা নিজেদের Docker stack install করে এবং নীতিগতভাবে একই box share করতে পারে। তবে CasaOS তার dashboard-এর জন্য port 80 চায়, আর Coolify-এর proxy 80 এবং 443 দুটিই চায়। তাই এই port-গুলো আগে থেকেই কোনো web server বা proxy ধরে রাখলে সংঘর্ষ হবে। যে box-এ ইতিমধ্যে service চলছে, সেখানে সাধারণত panel সঠিক tool নয়; এর পরিবর্তে Traefik এবং Compose ব্যবহার করুন।
পরে panel থেকে কীভাবে সরে আসব?
প্রয়োজন হওয়ার আগেই exit plan করুন। CasaOS থেকে app-এর docker-compose.yaml এবং তার /DATA volume নতুন host-এ copy করে আবার start করুন। Coolify থেকে প্রতিটি project-এর configuration export করুন এবং destination-এ একই repo-গুলোর দিকে point করুন। Cloudron থেকে নতুন platform-এ freshly installed app-এ backup থেকে data restore করুন, কারণ Cloudron packaging স্থানান্তরযোগ্য নয়; শুধু data স্থানান্তর করা যায়। প্রতিটি ক্ষেত্রে পুরোনোটি বন্ধ করার আগে একটি অস্থায়ী box-এ restore পরীক্ষা করুন।