بلاگ/نصب یک‌کلیکی Docker CE روی سرور ابری آریانت: از اولین کانتینر تا Docker Compose
به‌روز شده

نصب یک‌کلیکی Docker CE روی سرور ابری آریانت: از اولین کانتینر تا Docker Compose

1405/08/110 بازدید
نصب یک‌کلیکی Docker CE روی سرور ابری آریانت: از اولین کانتینر تا Docker Compose

نصب یک‌کلیکی Docker CE روی سرور ابری آریانت: از اولین کانتینر تا Docker Compose

نصب داکر روی سرور ابری معمولا با چند خط دستور شروع می‌شود: اضافه کردن مخزن رسمی، آپدیت پکیج‌ها، نصب و تنظیم سرویس. این کار را می‌شود کامل دستی انجام داد یا یک اپ آماده را در لحظه ساخت سرور انتخاب کرد. این مقاله هر دو راه را نشان می‌دهد و بعد از آن می‌رود سر اجرای اولین کانتینر و تنظیم Docker Compose.

اپ یک‌کلیکی Docker CE روی سرور ابری آریانت چیست

وقتی سرور ابری آریانت را روی دیتاسنتر OVH آلمان می‌سازید، در لیست اپ‌های یک‌کلیکی گزینه‌ای به اسم Docker CE هست. این گزینه یک ایمیج آبونتو 24.04 است که از قبل داکر روی آن نصب و تنظیم شده، بدون هیچ رابط گرافیکی اضافه؛ فقط یک هاست داکر خالص که از راه SSH به آن وصل می‌شوید. رمز و تنظیمات امنیتی هم به‌صورت جدا برای هر سرور در اولین بوت ساخته می‌شود، و دسترسی روت کامل در اختیار شماست.

حداقل پلنی که این اپ روی آن اجرا می‌شود 1 vCPU، 1 گیگابایت رم و 20 گیگابایت فضا است. برای کار واقعی با چند کانتینر همزمان، رم بیشتر از این حداقل منطقی‌تر است، اما برای تست و یادگیری همین پلن کافی است.

نصب دستی در برابر نصب یک‌کلیکی

قبل از انتخاب، خوب است بدانید دستی رفتن دقیقا چه مراحلی دارد و اپ آماده کدام‌ها را حذف می‌کند.

مرحلهنصب دستیاپ یک‌کلیکی Docker CE
انتخاب سرورهر سروری با هر سیستم‌عاملانتخاب اپ در لحظه ساخت سرور ابری
اضافه کردن مخزن داکرباید دستی اضافه شوداز قبل تنظیم شده
نصب پکیج‌هاapt install چند پکیج جدااز قبل نصب شده
فعال کردن سرویسباید enable و start شوداز ابتدا در حال اجرا
اولین دستور قابل اجرابعد از چند دقیقه کارdocker ps بلافاصله بعد از SSH

تفاوت اصلی زمان است، نه قابلیت. هر دو راه در نهایت یک Docker Engine استاندارد به شما می‌دهند؛ اپ یک‌کلیکی فقط مراحل تکراری نصب را از لیست کار شما حذف می‌کند.

ساخت سرور ابری و انتخاب اپ Docker CE

برای خرید سرور ابری با این اپ، از صفحه سرور ابری آریانت پلن و لوکیشن را انتخاب می‌کنید، بعد در مرحله انتخاب ایمیج، به‌جای یک توزیع خام، Docker CE را می‌زنید. اگر همان لحظه رمز روت مشخص کنید، همین رمز، رمز ورود SSH هم می‌شود. اگر به‌جایش کلید SSH ثبت کنید، یک رمز تولید می‌شود که در فایل /root/APP-INFO.txt روی خود سرور نوشته شده. نکته‌ای که باید بدانید: اگر بعدا از پنل رمز روت را ریست کنید، این کار رمز داخل سرور را عوض نمی‌کند؛ باید همان رمز اول یا کلید SSH را نگه دارید.

اگر فقط می‌خواهید قبل از خرید ماهانه، داکر را روی چند تنظیم مختلف تست کنید، سرور ابری ساعتی گزینه به‌صرفه‌تری است؛ چند ساعت پرداخت می‌کنید، تست می‌کنید و اگر نیاز نبود، سرور را می‌بندید.

اولین قدم‌ها بعد از ورود به سرور

بعد از این‌که سرور ابری فعال شد، با SSH به آن وصل شوید:

ssh root@<آیپی-سرور>
docker --version
docker ps

خروجی docker ps خالی اما بدون خطا، یعنی سرویس داکر در حال اجرا است. برای اولین تست یک کانتینر nginx بالا بیاورید:

docker run -d --name test-nginx -p 80:80 nginx

حالا با مرورگر روی آیپی سرور صفحه پیش‌فرض nginx را می‌بینید. برای دیدن لاگ یا توقف کانتینر:

docker logs test-nginx
docker stop test-nginx

همین چند دستور کافی است تا مطمئن شوید هاست داکر درست کار می‌کند، قبل از این‌که سراغ پروژه اصلی بروید.

از یک کانتینر تا Docker Compose

اپ Docker CE فقط موتور داکر را آماده می‌کند؛ Compose را باید خودتان روی همین سرور فعال کنید. پلاگین docker compose همراه بسته‌های رسمی داکر عرضه می‌شود، پس کافی است چک کنید نصب است یا نه:

docker compose version

اگر پیدا نشد، با همان مدیر پکیج آبونتو نصبش کنید (apt install docker-compose-plugin) و دوباره تست کنید. بعد یک فایل docker-compose.yml کنار پروژه بسازید، مثلا برای یک اپ ساده با دیتابیس:

services:
  app:
    image: node:20
    ports:
      - "3000:3000"
    volumes:
      - ./app:/app
  db:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: change-me
    volumes:
      - ./db-data:/var/lib/postgresql/data

و با یک دستور همه چیز را بالا بیاورید:

docker compose up -d

از این‌جا به بعد کار با Compose مثل هر سرور دیگری است؛ فرقی نمی‌کند زیرساخت زیرش سرور ابری آریانت باشد یا هر جای دیگر. برای یک نمونه کامل‌تر با چند سرویس واقعی، نصب n8n با Docker Compose را هم ببینید.

بستن پورت‌های اضافه با فایروال پنل

چون این سرور فقط SSH دارد و هیچ رابط گرافیکی روی پورت دیگری منتظر نیست، منطقی است فقط پورت‌هایی که کانتینرهای شما به آن‌ها نیاز دارند باز بماند. فایروال داخل پنل آریانت همین کار را بدون نیاز به iptables دستی انجام می‌دهد؛ پورت 22 برای SSH و هر پورتی که با -p در docker run یا در بخش ports در Compose باز کرده‌اید را اضافه کنید، باقی را بسته نگه دارید.

یک نکته درباره دامنه و SSL

برخلاف اپ‌هایی مثل وردپرس یا n8n که HTTPS و دامنه را خودشان مدیریت می‌کنند، Docker CE یک هاست خالص است. اگر اپ شما که داخل کانتینر بالا آمده نیاز به دامنه و SSL دارد، باید خودتان یک reverse proxy (مثل nginx یا Traefik) داخل همان Compose راه بیندازید و گواهی را هم خودتان بگیرید. این آزادی عمل بیشتری می‌دهد، اما مسئولیت تنظیم هم با شماست.

اگر ترجیح می‌دهید این بخش را خودکار داشته باشید، اپ‌های دیگر مارکت‌پلیس آریانت مثل Coolify همین کار را برای اپلیکیشن‌های دیپلوی‌شده از Git انجام می‌دهند.

نگهداری داده‌های کانتینر

یک نکته که در تست‌های اولیه راحت فراموش می‌شود: داده‌ای که فقط داخل کانتینر ذخیره شود، با پاک کردن یا جایگزین کردن همان کانتینر از بین می‌رود. برای دیتابیس یا هر فایلی که باید بماند، یک volume جدا تعریف کنید، مثل همان نمونه بالا که پوشه db-data را به کانتینر postgres وصل می‌کند. وقتی بعدا با docker compose pull ایمیج جدیدتری می‌آورید، همین volume دست‌نخورده باقی می‌ماند و فقط کانتینر عوض می‌شود. برای پاک‌سازی ایمیج‌ها و کانتینرهای اضافه که دیگر لازم نیستند، مدیریت و حذف ایمیج‌ها، کانتینرها، حجم‌ها و شبکه‌های Docker دستورهای لازم را دارد.

فضای 20 گیگابایتی حداقل پلن برای یک یا دو کانتینر کوچک مشکلی ندارد، اما اگر چند دیتابیس یا لاگ حجیم دارید، مصرف دیسک را هر چند وقت یک‌بار با دستور df -h چک کنید تا سرور وسط کار جا نماند.

کدام سرور ابری برای Docker CE مناسب‌تر است

برای یک پروژه کوچک یا تست، همان پلن پایه 1 vCPU و 1 گیگابایت رم کافی است. اگر چند کانتینر همزمان دارید یا دیتابیس داخل همان سرور بالا می‌آورید، سراغ پلنی با رم بیشتر بروید. جزئیات پلن‌ها و قیمت هر لوکیشن را روی صفحه سرور ابری OVH آلمان آریانت ببینید.

نتیجه‌گیری

اپ یک‌کلیکی Docker CE همان داکر استاندارد است، فقط با چند دقیقه کمتر کار نصب. بعد از بالا آمدن سرور، اولین کانتینر و بعد Docker Compose را همین امروز تست کنید.

برای ساخت یک هاست داکر آماده، سراغ اپ Docker CE در مارکت‌پلیس آریانت بروید.

سؤالات متداول

آیا اپ Docker CE رابط گرافیکی هم دارد؟ نه، فقط دسترسی SSH است. اگر رابط گرافیکی برای مدیریت کانتینرها می‌خواهید، می‌توانید چیزی مثل Portainer را روی همین سرور نصب کنید.

حداقل پلن لازم برای این اپ چیست؟ 1 vCPU، 1 گیگابایت رم و 20 گیگابایت فضا؛ برای چند کانتینر همزمان رم بیشتر بهتر است.

آیا Docker Compose از قبل نصب است؟ موتور داکر از قبل آماده است، اما پلاگین Compose را باید خودتان با apt فعال یا نصب کنید.

اگر رمز روت را از پنل عوض کنم، رمز داخل سرور هم عوض می‌شود؟ نه. ریست رمز در پنل رمز داخل سرور را تغییر نمی‌دهد؛ باید همان رمز اول ساخت سرور یا کلید SSH را نگه دارید.