«روی سیستم من کار می‌کرد!» مشکلی قدیمی است. کانتینر با بسته‌بندی برنامه، کتابخانه‌ها و تنظیمات در یک ایمیج، اجرای یکسان را در همه‌جا ممکن می‌کند.

تفاوت با ماشین مجازی

  • ماشین مجازی: هر VM یک سیستم‌عامل کامل دارد؛ ایزوله‌تر اما سنگین‌تر.
  • کانتینر: هستهٔ سیستم‌عامل میزبان را به اشتراک می‌گذارد؛ در چند ثانیه بالا می‌آید و حافظهٔ کمتری می‌خواهد.
docker run -d -p 8080:80 nginx

کانتینر جایگزین کامل VM نیست؛ برای ایزوله‌سازی قوی‌تر یا اجرای سیستم‌عامل متفاوت، VM هنوز مناسب‌تر است. بسیاری از سیستم‌ها هر دو را ترکیب می‌کنند.