VPS · מדריך

איך להתקין Docker על Ubuntu

עודכן October 11, 2026 4 דקות קריאה

בעמוד זה
  1. לפני שמתחילים
  2. שלב 1: הסרת חבילות מתנגשות
  3. שלב 2: הוספת המאגר של Docker
  4. שלב 3: התקנת Docker ו-Compose
  5. שלב 4: הרשאות וסבב לוגים
  6. קובץ Compose ראשון
  7. Docker ו-ufw: מלכודת חומת האש
  8. Docker על VPS של HytHost
  9. שאלות נפוצות

Docker מריץ אפליקציות בתוך קונטיינרים: כל קונטיינר מגיע עם כל מה שהוא צריך, ולכן הוא רץ אותו דבר במחשב הנייד שלכם ועל שרת. אתרים, מסדי נתונים, בוטים ושרתי משחק אפשר להפעיל בפקודה אחת או בקובץ Compose אחד.

המדריך הזה מתקין Docker Engine ו-Docker Compose על Ubuntu 24.04 או 22.04 מהמאגר הרשמי של Docker, ואז עובר על ההגדרות שחשובות בשרת אמיתי: הרשאות, לוגים וחומת האש.

לפני שמתחילים

  • גרסת Ubuntu נתמכת: Docker תומך בגרסאות 64 ביט של Ubuntu 26.04, 24.04 ו-22.04 LTS. בדקו את הגרסה שלכם עם cat /etc/os-release.
  • שרת KVM, לא קונטיינר: Docker צריך יכולות ליבה משלו. הוא רץ על כל VPS מסוג KVM, אבל לעיתים קרובות לא על חבילות מבוססות קונטיינרים (OpenVZ או LXC).
  • root או משתמש עם sudo. הפקודות שלהלן משתמשות ב-sudo; אם התחברתם כ-root, אפשר לוותר עליו.

בשרתים, הימנעו מהחבילה docker.io מהמאגר של Ubuntu עצמה ומגרסת ה-Snap: המאגר של Docker מקבל גרסאות חדשות ראשון, ובו משתמש התיעוד הרשמי של Docker.

Docker צריך מכונה וירטואלית אמיתית: חבילות HytHost KVM VPS עם Ubuntu והרשאות root מלאות מתחילות מ-€2.92 לחודש.

לחבילות VPS

שלב 1: הסרת חבילות מתנגשות

אם התקנתם בעבר Docker ממקור אחר, הסירו קודם את החבילות האלה. בשרת חדש apt פשוט ידווח שאף אחת מהן לא מותקנת:

sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc docker-buildx podman-docker containerd runc | cut -f1)

הפעולה הזו לא מוחקת את האימג'ים והווליומים שב-/var/lib/docker/.

שלב 2: הוספת המאגר של Docker

הפקודות האלה, מתוך התיעוד של Docker, מוסיפות את מפתח החתימה של Docker ואת מאגר ה-apt שלו עבור גרסת ה-Ubuntu שלכם:

sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

שלב 3: התקנת Docker ו-Compose

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

זה מתקין את Docker Engine, את כלי שורת הפקודה, את כלי הבנייה Buildx ואת תוסף Compose. בדקו שהכול עובד:

sudo docker run hello-world
docker compose version

הפקודה הראשונה מורידה אימג' בדיקה קטנטן ומדפיסה הודעת פתיחה. ב-Ubuntu, Docker עולה אוטומטית עם אתחול המערכת, כך שאין מה להפעיל.

Compose הוא הפקודה docker compose, עם רווח. הפקודה הישנה docker-compose עם מקף היא הגרסה הראשונה שכבר הוצאה משימוש; מדריכים שעדיין משתמשים בה עובדים גם עם הפקודה החדשה.

שלב 4: הרשאות וסבב לוגים

הרצת docker בלי sudo. הוסיפו את המשתמש שלכם לקבוצה docker, ואז התנתקו והתחברו מחדש:

sudo usermod -aG docker $USER

שימו לב ש-Docker עצמו מזהיר שהקבוצה הזו מעניקה הרשאות ברמת root: כל מי שנמצא בה יכול לשלוט בשרת כולו. הוסיפו רק משתמשים שהייתם נותנים להם root.

הגבלת גודל הלוגים. כברירת מחדל, הלוגים של הקונטיינרים גדלים ללא הגבלה ועלולים למלא את הדיסק. צרו את /etc/docker/daemon.json:

{
  "log-driver": "json-file",
  "log-opts": { "max-size": "10m", "max-file": "3" }
}

לאחר מכן הריצו sudo systemctl restart docker. ההגבלה חלה על קונטיינרים שנוצרו אחרי השינוי, לכן צרו מחדש את הקיימים.

קובץ Compose ראשון

Compose מתאר את הקונטיינרים שלכם בקובץ אחד. צרו תיקייה עם compose.yaml:

services:
  web:
    image: nginx:stable
    ports:
      - "127.0.0.1:8080:80"
    restart: unless-stopped

הפעילו עם docker compose up -d, בדקו את המצב עם docker compose ps וקראו את הלוגים עם docker compose logs. restart: unless-stopped מחזיר את הקונטיינר לפעולה אחרי קריסה או אתחול. הפורט קשור ל-127.0.0.1 בכוונה, כפי שמסביר הסעיף הבא.

Docker ו-ufw: מלכודת חומת האש

כמעט כולם נופלים בזה. כשמפרסמים פורט, למשל -p 8080:80, Docker מוסיף כללי חומת אש משלו שמופעלים לפני הכללים של ufw. הפורט פתוח לאינטרנט גם אם ufw מציג אותו כסגור.

  • קשרו פורטים ל-localhost כשרק השרת עצמו צריך אותם, למשל מסד נתונים או אפליקציה מאחורי reverse proxy: 127.0.0.1:8080:80.
  • אל תפרסמו בכלל פורטים של מסדי נתונים; במקום זאת, תנו לקונטיינרים לתקשר ביניהם דרך רשת Docker.
  • לסינון לפי כתובת מקור, הוסיפו כללים לשרשרת ה-iptables DOCKER-USER, ש-Docker בודק לפני הכללים שלו.

אותו הדבר חל על שרתי משחק שרצים ב-Docker; ראו איך להגדיר VPS לשרתי משחק.

Docker על VPS של HytHost

חבילות ה-VPS של HytHost רצות על KVM, כך שלכל VPS יש ליבה משלו ו-Docker רץ בלי הגבלות. בחרו Ubuntu 24.04 או 22.04 בהזמנה, התחברו דרך SSH ופעלו לפי השלבים שלמעלה. תקבלו גישת root מלאה, אחסון SSD והגנת DDoS, ותוכלו לשדרג לחבילה גדולה יותר בהמשך ככל שהקונטיינרים שלכם גדלים.

שאלות נפוצות

שאלות נפוצות

Docker תומך בגרסאות 64 ביט של Ubuntu 26.04, 24.04 ו-22.04 LTS. מערכות אחרות המבוססות על Ubuntu, כמו Linux Mint, אינן נתמכות רשמית.

לא בשרת ייצור. Docker מציין שסקריפט הנוחות מיועד לסביבות פיתוח ואינו מומלץ לייצור; הוא גם עלול לקפוץ לגרסה ראשית חדשה. השתמשו במקום זאת בשיטת המאגר.

docker-compose עם מקף היא הגרסה הישנה שהוצאה משימוש. כיום Compose הוא תוסף של Docker שמשתמשים בו כ-docker compose, ומותקן עם החבילה docker-compose-plugin.

פורטים ש-Docker מפרסם עוקפים את ufw. קשרו את הפורט ל-127.0.0.1 אם הוא צריך להישאר מקומי, או סננו אותו בשרשרת DOCKER-USER.

על VPS מסוג KVM, כן. חבילות VPS מבוססות קונטיינרים, כמו OpenVZ, לעיתים קרובות לא יכולות להריץ Docker או דורשות הגדרות מיוחדות מהספק.

הריצו את הקונטיינרים שלכם על VPS

חבילות HytHost KVM VPS מריצות Docker בלי הגבלות, עם גישת root מלאה ו-Ubuntu 24.04, החל מ-€2.92 לחודש.

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

המדריך הזה עזר לך?