اگر روی VPS ایران چندین سرویس Docker اجرا میکنید، مدیریت کانتینرها از طریق ترمینال همیشه ساده نیست. برای مشاهده وضعیت کانتینرها، بررسی لاگها، مدیریت Imageها، Volumeها و اجرای پروژههای Docker Compose معمولاً باید مرتب با SSH به سرور متصل شوید و دستورات مختلفی اجرا کنید.
Arcane یک پنل وب مدرن و Self-Hosted برای مدیریت Docker است که امکان مدیریت کانتینرها، Imageها، Networkها، Volumeها و پروژههای Compose را از طریق رابط گرافیکی فراهم میکند. این پروژه بهصورت Open Source توسعه داده میشود و برای اجرای آن میتوان از Docker Compose استفاده کرد.
در این آموزش از یک VPS لینوکس ایران استفاده میکنیم و مرحلهبهمرحله Arcane را نصب میکنیم، پنل را باز میکنیم و یک سرویس آزمایشی Docker را از طریق آن اجرا میکنیم.
Arcane چیست؟
Arcane یک رابط گرافیکی برای مدیریت Docker است.
به جای اینکه برای هر عملیات وارد SSH شوید و دستورهایی مانند:
docker logs
docker images
docker restart
docker compose up -d
را اجرا کنید، میتوانید بسیاری از این کارها را از طریق پنل وب Arcane انجام دهید.
بر اساس مستندات رسمی، Arcane بخشهایی مانند موارد زیر را برای مدیریت Docker در اختیار شما قرار میدهد:
🔹 مدیریت Containerها
🔹 مشاهده Imageها
🔹 مدیریت Volumeها
🔹 مدیریت Networkها
🔹 مدیریت پروژههای Docker Compose
🔹 مشاهده منابع و وضعیت سرویسها
🔹 مشاهده لاگ Containerها
🔹 اجرای عملیات مدیریتی روی Containerها
🔹 مدیریت چند محیط Docker
🔹 امکانات مربوط به دسترسی و احراز هویت
مستندات رسمی Arcane نیز نصب با Docker Compose را روش پیشنهادی معرفی میکند.
چرا Arcane برای VPS ایران مناسب است؟
فرض کنید روی یک VPS ایران چند سرویس مانند موارد زیر دارید:
🔹 WordPress
🔹 Nginx
🔹 MySQL
🔹 Redis
🔹 PostgreSQL
🔹 پنلهای مدیریتی
🔹 سرویسهای Node.js
🔹 سرویسهای Python
🔹 Minecraft
🔹 Monitoring
🔹 ابزارهای Self-Hosted
اگر این سرویسها با Docker اجرا شوند، مدیریت آنها از طریق یک پنل میتواند سادهتر شود.
Arcane روی خود VPS نصب میشود و برای استفاده از آن لازم نیست سرویسهای مدیریت Docker را به یک سرویس ابری خارجی منتقل کنید.
البته باید توجه داشته باشید که Arcane برای مدیریت Docker به دسترسی به Docker Socket نیاز دارد. بنابراین امنیت خود پنل اهمیت زیادی دارد.
پیشنیازهای نصب Arcane
برای این آموزش پیشنهاد میشود از یک VPS لینوکسی با یکی از توزیعهای زیر استفاده کنید:
🔹 Ubuntu 22.04
🔹 Ubuntu 24.04
🔹 Debian 12
🔹 Debian 13
🔹 Rocky Linux
🔹 AlmaLinux
حداقل پیشنهاد عملی برای شروع:
| منبع | مقدار پیشنهادی |
|---|---|
| CPU | 1 هسته |
| RAM | 1GB |
| Disk | حداقل 10GB |
| سیستمعامل | Ubuntu 22.04/24.04 |
| Docker | نصبشده |
| دسترسی | Root یا sudo |
البته منابع موردنیاز واقعی به سرویسهایی که روی Docker اجرا میکنید بستگی دارد.
مرحله اول؛ اتصال به VPS
ابتدا با SSH به سرور متصل شوید.
در ویندوز میتوانید از PowerShell یا ابزارهایی مانند PuTTY استفاده کنید.
مثلاً:
به جای:
آدرس IP سرور خود را وارد کنید.
بعد از ورود، ابتدا سیستم را بهروزرسانی کنید:
مرحله دوم؛ بررسی نصب Docker
برای بررسی Docker دستور زیر را اجرا کنید:
سپس:
اگر خروجی نسخه Docker و Docker Compose را مشاهده کردید، میتوانید به مرحله بعد بروید.
اگر Docker نصب نیست، ابتدا باید Docker Engine و Docker Compose را نصب کنید.
پس از نصب Docker، سرویس را بررسی کنید:
در صورت فعال نبودن:
سپس:
را اجرا کنید.
اگر خروجی بدون خطا نمایش داده شد، Docker آماده استفاده است.
مرحله سوم؛ ساخت پوشه Arcane
برای اینکه فایلهای مربوط به Arcane مرتب باشند، یک پوشه ایجاد میکنیم:
سپس وارد آن شوید:
مرحله چهارم؛ ساخت کلید رمزنگاری
Arcane برای نگهداری امن دادههای حساس خود از Encryption Key استفاده میکند.
میتوانید با OpenSSL یک مقدار تصادفی تولید کنید:
خروجی را کپی کنید.
مثلاً ممکن است چیزی شبیه این تولید شود:
کلید واقعی تولیدشده توسط خودتان را استفاده کنید و نمونه بالا را در سرور قرار ندهید.
مستندات رسمی Arcane نیز استفاده از یک کلید تصادفی را برای ENCRYPTION_KEY توصیه میکند.
🚀 سرور مجازی ایران با منابع اختصاصی برای Docker
برای اجرای پنلهای مدیریتی مثل Arcane، به یک VPS پایدار با دیسک NVMe، پهنای باند مطمئن و آپتایم بالا نیاز دارید. ایرانیکاسرور با منابع ۱۰۰٪ اختصاصی و پشتیبانی ۲۴/۷ همراه شماست.
📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور
مرحله پنجم؛ ساخت فایل Docker Compose
یک فایل Compose ایجاد کنید:
سپس این محتوا را قرار دهید:
arcane:
image: ghcr.io/getarcaneapp/manager:latest
container_name: arcane
ports:
– “3552:3552″volumes:
– /var/run/docker.sock:/var/run/docker.sock
– arcane-data:/app/data
environment:
– ENCRYPTION_KEY=YOUR_RANDOM_KEY
– TZ=Asia/Tehran
cgroup: host
restart: unless-stopped
volumes:
arcane-data:
در قسمت:
کلیدی که با OpenSSL ایجاد کردید را قرار دهید.
ساختار بالا مطابق نمونه نصب رسمی Arcane است و Image رسمی فعلی Arcane را از GitHub Container Registry دریافت میکند.
مرحله ششم؛ اجرای Arcane
حالا Compose را اجرا کنید:
چند لحظه صبر کنید.
سپس وضعیت Container را بررسی کنید:
باید Container مربوط به Arcane را مشاهده کنید.
برای بررسی لاگها:
یا:
اگر خطای جدی مشاهده نمیکنید، Arcane باید آماده استفاده باشد.
مرحله هفتم؛ باز کردن پنل Arcane
Arcane بهصورت پیشفرض روی پورت:
اجرا میشود.
بنابراین اگر IP سرور شما مثلاً:
باشد، میتوانید در مرورگر وارد شوید:
به جای IP نمونه، IP واقعی VPS خودتان را وارد کنید.
اگر پنل باز نشد چه کار کنیم؟
اگر صفحه Arcane باز نشد، ابتدا بررسی کنید Container در حال اجرا باشد:
سپس پورت را بررسی کنید:
همچنین لاگ را ببینید:
اگر روی VPS فایروال فعال است، باید پورت 3552 را نیز بررسی کنید.
برای UFW:
در صورت نیاز:
سپس دوباره آدرس زیر را امتحان کنید:
⚠️ نکته امنیتی: باز گذاشتن مستقیم پورت پنل روی اینترنت برای استفاده دائمی توصیه نمیشود. برای محیط واقعی بهتر است Arcane را پشت HTTPS و Reverse Proxy قرار دهید.
مرحله هشتم؛ ورود به Arcane
پس از باز کردن پنل، مراحل راهاندازی اولیه را دنبال کنید.
مستندات رسمی Arcane اعلام میکند که در اولین ورود، اطلاعات ورود اولیه نمایش داده میشود و سیستم از شما میخواهد رمز عبور پیشفرض را تغییر دهید.
پس از ورود، اولین کار این باشد که:
🔹 رمز عبور را تغییر دهید.
🔹 پنل را روی اینترنت بدون محافظ رها نکنید.
🔹 برای دسترسی عمومی HTTPS فعال کنید.
🔹 دسترسی به پورت مدیریت را محدود کنید.
Docker Socket چیست و چرا Arcane به آن نیاز دارد؟
یکی از مهمترین قسمتهای فایل Compose این خط است:
Docker Socket رابطی است که از طریق آن برنامهها میتوانند با Docker Engine روی Host ارتباط برقرار کنند.
Arcane برای مدیریت Containerهای Docker از همین ارتباط استفاده میکند. مستندات رسمی نیز /var/run/docker.sock را بهعنوان دسترسی Arcane به Docker معرفی کرده است.
به همین دلیل باید توجه کنید که:
دسترسی به Docker Socket را باید یک دسترسی حساس در نظر گرفت.
اگر پنل مدیریت Docker را مستقیماً روی اینترنت و بدون لایههای امنیتی مناسب قرار دهید، ریسک امنیتی افزایش پیدا میکند.
مرحله نهم؛ اجرای اولین سرویس Docker
حالا که Arcane نصب شده است، بهتر است یک Container ساده اجرا کنیم.
برای تست میتوانیم از Nginx استفاده کنیم.
در بخش مربوط به Containerها یا ایجاد پروژه جدید، یک Compose Project ایجاد کنید.
برای مثال:
nginx:
image: nginx:alpine
container_name: test-nginx
ports:
– “8080:80”
restart: unless-stopped
این Compose یک Container به نام:
ایجاد میکند.
پورت:
روی VPS به پورت:
داخل Container متصل میشود.
تست سرویس Nginx
بعد از اجرای پروژه، در مرورگر وارد شوید:
اگر همه چیز درست باشد، صفحه پیشفرض Nginx نمایش داده میشود.
به این ترتیب اولین سرویس Docker شما از طریق Arcane اجرا شده است.
مدیریت Container از طریق Arcane
بعد از اجرای Nginx، میتوانید وضعیت آن را در پنل مشاهده کنید.
معمولاً اطلاعاتی مانند موارد زیر در اختیار شما قرار میگیرد:
🔹 نام Container
🔹 وضعیت اجرا
🔹 Image
🔹 Port
🔹 Network
🔹 زمان اجرا
🔹 مصرف منابع
🔹 لاگها
به جای اجرای:
میتوانید وضعیت Container را از داخل پنل بررسی کنید.
💎 میزبانی حرفهای سرویسهای Docker روی سرور مجازی ایران
اگر قصد دارید چندین سرویس Docker را بهصورت همزمان مدیریت کنید، به منابع پردازشی پایدار و دیسک پرسرعت NVMe نیاز دارید. ایرانیکاسرور با پلنهای متنوع VPS ایران، بهترین بستر برای اجرای پنلهایی مثل Arcane فراهم میکند.
📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور
مشاهده لاگ Container
یکی از کاربردهای مهم Arcane مشاهده Log است.
فرض کنید Nginx با خطا مواجه شده است.
در حالت معمول میتوانید از این دستور استفاده کنید:
اما در Arcane میتوانید Container را انتخاب کرده و Logهای آن را از رابط گرافیکی مشاهده کنید.
این قابلیت برای زمانی مفید است که چندین سرویس روی VPS دارید و نمیخواهید مرتب بین دستورات مختلف Docker جابهجا شوید.
Restart کردن Container
اگر سرویسی متوقف شده باشد، میتوانید آن را از طریق پنل مدیریت کنید.
معادل خط فرمان:
است.
همچنین میتوانید وضعیت Container را بررسی کنید:
مدیریت Docker Imageها
Imageها پایه اجرای Containerها هستند.
برای مشاهده Imageهای موجود از طریق ترمینال:
در Arcane نیز میتوانید Imageهای Docker را از طریق رابط گرافیکی مدیریت کنید.
برای مثال Image مربوط به:
ممکن است چند نسخه داشته باشد.
قبل از حذف Imageهای قدیمی، مطمئن شوید که Container فعالی به آن وابسته نیست.
مدیریت Volumeها
Volumeها برای نگهداری دائمی اطلاعات Container استفاده میشوند.
برای مشاهده Volumeهای Docker:
در Arcane نیز میتوان Volumeهای مربوط به محیط Docker را مدیریت کرد.
این قسمت اهمیت زیادی دارد؛ زیرا حذف اشتباه Volume ممکن است باعث از بین رفتن دادههای دائمی یک سرویس شود.
برای مثال اگر دیتابیس PostgreSQL یا MySQL اطلاعات خود را داخل Volume ذخیره کرده باشد، حذف Volume میتواند پیامد جدی داشته باشد.
اجرای پروژه Docker Compose
یکی از قابلیتهای مهم Arcane مدیریت پروژههای Compose است.
فرض کنید پروژهای مانند این دارید:
services:
app:
image: nginx:alpine
ports:
– “8080:80”
redis:
image: redis:alpine
db:
image: postgres:16
environment:
POSTGRES_PASSWORD: change-me
در این حالت به جای مدیریت جداگانه Containerها، پروژه Compose را بهعنوان یک Stack مدیریت میکنید.
این روش برای پروژههایی که چند سرویس دارند بسیار کاربردی است.
نکته مهم درباره PROJECTS_DIRECTORY
اگر میخواهید Arcane پروژههای Compose موجود روی VPS را مدیریت کند، موضوع مسیر فایلها اهمیت زیادی دارد.
طبق مستندات رسمی، مسیر پروژه باید بین Host و Container هماهنگ باشد. برای مثال اگر پروژهها روی Host در:
قرار دارند، بهتر است همان مسیر داخل Container نیز Mount شود:
– /opt/docker:/opt/docker
و سپس:
– PROJECTS_DIRECTORY=/opt/docker
استفاده شود.
این موضوع مهم است، زیرا فایل Compose ممکن است از مسیرهای نسبی مانند:
./data
./nginx
استفاده کند.
اگر مسیر Host و Container متفاوت باشد، Arcane و Docker ممکن است نتوانند مسیرهای پروژه را بهدرستی resolve کنند.
نمونه Compose برای مدیریت پروژهها
اگر پروژههای Docker شما در:
قرار دارند، میتوانید ساختار Arcane را مشابه نمونه زیر تنظیم کنید:
arcane:
image: ghcr.io/getarcaneapp/manager:latest
container_name: arcaneports:
– “3552:3552”
volumes:
– /var/run/docker.sock:/var/run/docker.sock
– arcane-data:/app/data
– /opt/docker:/opt/docker
environment:
– ENCRYPTION_KEY=YOUR_RANDOM_KEY
– PROJECTS_DIRECTORY=/opt/docker
– TZ=Asia/Tehran
cgroup: host
restart: unless-stopped
volumes:
arcane-data:
Arcane تأکید میکند که مسیر پروژه باید بهصورت Absolute Path تعریف شود و مسیر Mountشده برای پروژهها با PROJECTS_DIRECTORY هماهنگ باشد.
آیا Arcane جایگزین SSH میشود؟
خیر.
Arcane یک رابط مدیریتی برای Docker است و جایگزین کامل SSH نیست.
برای کارهایی مانند:
nano
systemctl
journalctl
iptables
ufw
همچنان ممکن است به SSH نیاز داشته باشید.
اما برای مدیریت Docker، Arcane میتواند بسیاری از عملیات معمول را از طریق رابط وب انجام دهد.
بهتر است SSH را همچنان بهعنوان مسیر مدیریتی اصلی و اضطراری VPS حفظ کنید.
امنیت Arcane روی VPS ایران
این بخش بسیار مهم است.
Arcane به Docker Socket دسترسی دارد و بنابراین نباید پنل آن را مانند یک وبسایت معمولی در نظر بگیرید.
1. پورت 3552 را بیدلیل عمومی نکنید
برای تست میتوانید از:
استفاده کنید.
اما برای محیط واقعی بهتر است پنل پشت Reverse Proxy قرار بگیرد.
2. از HTTPS استفاده کنید
برای استفاده دائمی، بهتر است Arcane را روی یک Subdomain مانند:
قرار دهید.
سپس با Nginx یا Caddy ترافیک HTTPS را به Arcane منتقل کنید.
ساختار کلی:
↓
HTTPS :443
↓
Reverse Proxy
↓
Arcane :3552
↓
Docker Socket
↓
Docker Containers
محدود کردن دسترسی با فایروال
اگر فقط IP مشخصی باید به پنل دسترسی داشته باشد، میتوانید دسترسی را محدود کنید.
مثلاً:
سپس:
را بررسی کنید.
اگر Arcane پشت Reverse Proxy قرار گرفته باشد، میتوانید پورت 3552 را از اینترنت عمومی نیز در دسترس قرار ندهید و فقط Reverse Proxy به آن دسترسی داشته باشد.
استفاده از Docker Socket Proxy
در محیطهای حساستر میتوان به جای Mount مستقیم Docker Socket از Socket Proxy استفاده کرد.
مستندات رسمی Arcane نیز برای محیطهای سختگیرانهتر و مخصوصاً برخی سناریوهای SELinux استفاده از Socket Proxy را پیشنهاد میکند.
در این حالت ساختار کلی به شکل زیر خواهد بود:
↓
Docker Socket Proxy
↓
Docker Engine
مزیت این روش این است که میتوان دسترسیهای API مربوط به Docker را محدودتر کرد.
خطاهای رایج Arcane
خطای اول: Container اجرا نمیشود
ابتدا:
سپس:
را بررسی کنید.
همچنین فایل Compose را بررسی کنید:
این دستور میتواند بسیاری از خطاهای ساختاری Compose را مشخص کند.
خطای دوم: پورت 3552 باز نیست
بررسی:
اگر چیزی نمایش داده نشد:
و:
را بررسی کنید.
خطای سوم: Arcane به Docker دسترسی ندارد
ابتدا وجود Socket را بررسی کنید:
و سپس Mount مربوط به Compose را بررسی کنید:
همچنین بررسی کنید Docker روی Host در حال اجرا باشد:
خطای چهارم: پروژه Compose در Arcane پیدا نمیشود
اگر پروژه در:
قرار دارد، مطمئن شوید همان مسیر به Container Mount شده باشد:
و:
تنظیم شده باشد.
این هماهنگی مسیر طبق مستندات رسمی برای مدیریت پروژههای موجود اهمیت دارد.
خطای پنجم: Container بعد از Reboot اجرا نمیشود
در Compose بهتر است برای سرویسها از:
استفاده کنید.
برای خود Arcane نیز این گزینه در نمونه رسمی Compose وجود دارد.
بعد از Restart VPS بررسی کنید:
بررسی سلامت Arcane
Arcane یک دستور Health نیز در اختیار دارد.
برای بررسی سلامت Container میتوانید از:
استفاده کنید.
همچنین میتوان Healthcheck را در Compose تعریف کرد:
test: [“CMD”, “./arcane”, “health”, “–timeout”, “2s”]
interval: 10s
timeout: 3s
retries: 5
start_period: 15s
این Healthcheck در مستندات رسمی Arcane نیز ارائه شده است.
بروزرسانی Arcane
اگر از Image مربوط به:
استفاده میکنید، برای دریافت Image جدید میتوانید:
و سپس:
را اجرا کنید.
قبل از بروزرسانی سرویسهای مهم، بهتر است از دادههای Arcane و پروژههای Docker خود Backup داشته باشید.
حذف Arcane
اگر زمانی قصد حذف Arcane را داشتید:
سپس:
این دستور Container و Network ایجادشده توسط Compose را متوقف میکند.
اگر Volume مربوط به Arcane را نیز حذف کنید، اطلاعات ذخیرهشده در آن Volume از بین میرود؛ بنابراین قبل از حذف Volume حتماً بررسی کنید اطلاعات مهمی داخل آن وجود نداشته باشد.
آیا Arcane برای مدیریت VPS مناسب است؟
Arcane زمانی مفید است که بخش زیادی از سرویسهای شما با Docker اجرا شوند.
برای مثال:
│
├── Arcane
├── Nginx
├── PostgreSQL
├── Redis
├── WordPress
├── Node.js
└── Monitoring
در چنین ساختاری میتوانید بسیاری از عملیات Docker را از طریق یک پنل انجام دهید.
اما Arcane جایگزین کامل ابزارهای مدیریت خود سیستمعامل نیست.
🛠 مشکل در نصب یا کانفیگ Arcane دارید؟
تیم فنی ایرانیکاسرور آماده است تا در زمینه نصب پنلهای مدیریت Docker، کانفیگ سرور و رفع مشکلات مربوط به Docker Compose به شما کمک کند. اگر در هر مرحله از این آموزش با چالشی مواجه شدید، درخواست خود را ارسال کنید.
📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور
جمعبندی
Arcane یک پنل Self-Hosted برای مدیریت Docker است که میتواند مدیریت Containerها، Imageها، Volumeها، Networkها و پروژههای Compose را سادهتر کند.
در این آموزش ابتدا Docker را روی VPS بررسی کردیم، سپس Arcane را با Docker Compose نصب کردیم و در نهایت یک سرویس Nginx را از طریق Docker اجرا کردیم.
مراحل اصلی بهصورت خلاصه:
↓
نصب Docker
↓
ساخت /opt/arcane
↓
ساخت Encryption Key
↓
ساخت compose.yaml
↓
اجرای Arcane
↓
ورود به پنل
↓
ساخت پروژه Docker
↓
اجرای Nginx
↓
مدیریت Container
اگر از VPS ایران برای اجرای سرویسهای Docker استفاده میکنید، Arcane میتواند یک رابط گرافیکی برای مدیریت این سرویسها در اختیار شما قرار دهد؛ با این حال، به دلیل دسترسی آن به Docker، امنسازی پنل، استفاده از HTTPS، محدود کردن دسترسی و مدیریت صحیح Docker Socket اهمیت زیادی دارد.
برای اطلاعات بهروز درباره نصب و قابلیتهای Arcane، مستندات رسمی پروژه را بررسی کنید.
دیدگاهها
0 دیدگاه برای این مطلب ثبت شده است.