English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تثبيت Docker على Ubuntu

موتور داكر-كومونيتي يدعم الإصدارات التالية من أندرويد:

  • زينيال 16.04 (LTS)

  • بنيونيك 18.04 (LTS)

  • كوسميك 18.10

  • Disco 19.04

إصدارات تحديث أخرى...

يدعم Docker Engine - Community على أرشيتك x86_64 (أو amd64) armhf،arm64،s390x (IBM Z)،و ppc64le (IBM Power).

تثبيت باستخدام سكربت التثبيت الرسمي

أمر التثبيت هو:

يمكنك أيضًا استخدام أمر التثبيت المسبق للـ daocloud في البلد

curl -sSL https://get.daocloud.io/docker | sh

التثبيت يدويًا

إزالة الإصدار القديم

الإصدار القديم لدocker يُدعى docker،docker.io أو docker-engine. إذا كان مثبتًا، فقم بإزالته:

$ sudo apt-get remove docker docker-engine docker.io containerd runc

يُدعى حاليًا حزمة البرمجيات Docker Engine-Community docker-ce.

تثبيت Docker Engine-Community، سأشرح طريقتين.

تثبيت باستخدام مستودع Docker

قبل تثبيت Docker Engine-Community على المضيف الجديد لأول مرة، يجب إعداد مستودع Docker. بعد ذلك، يمكنك تثبيت وتحديث Docker من المستودع.

إعداد المستودعات

تحديث إدراج حزمة apt.

$ sudo apt-get update

تثبيت حزم الاعتماد apt لجلب المستودعات عبر HTTPS:

$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

إضافة مفتاح GPG الرسمي لدocker

$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 من خلال البحث عن ثمانية أحرف الأخيرة من البصمة، تأكد مما إذا كنت الآن تمتلك مفتاحًا يحتوي على البصمة.

$ sudo apt-key fingerprint 0EBFCD88
    
pub rsa4096 2017-02-22 [SCEA]
      9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid unknown Docker Release (CE deb) <[email protected]>
sub rsa4096 2017-02-22 [S]

استخدام الأوامر التالية لضبط مستودع الإصدار الثابت

$ sudo add-apt-repository \
   "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
   $(lsb_release -cs) \
   stable

تنصيب Docker Engine-Community

تحديث إدراج حزمة apt.

$ sudo apt-get update

تنصيب أحدث إصدار من Docker Engine-Community و containerd، أو انتقل إلى الخطوة التالية لتنصيب إصدار معين:

$ sudo apt-get install docker-ce docker-ce-cli containerd.io

لإعداد إصدار معين من Docker Engine-Community، قم بعرض إصدارات المتاحة في المستودع ثم اختر إصدارًا للتنصيب. قم بعرض إصدارات المتاحة في مستودعك:

$ apt-cache madison docker-ce
  docker-ce | 5:18.09.1~3-0~ubuntu-xenial | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 Packages
  docker-ce | 5:18.09.0~3-0~ubuntu-xenial | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 Packages
  docker-ce | 18.06.1~ce~3-0~ubuntu | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 Packages
  docker-ce | 18.06.0~ce~3-0~ubuntu       | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu  xenial/stable amd64 Packages
  ...

使用第二列中的版本字符串安装特定版本,例如 5:18.09.1~3-0~ubuntu-xenial。

$ sudo apt-get install docker-ce= docker-ce-cli= containerd.io

测试 Docker 是否安装成功,输入以下指令,打印出以下信息则安装成功:

$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete                                                                                                                                  Digest: sha256:c3b4ada4687bbaa170745b3e4dd8ac3f194ca95b2d0518b417fb47e5879d9b5f
الحالة: تم تنزيل الصورة الجديدة للـ hello-world:latest
مرحبًا من Docker!
يظهر هذا الرسالة أن تثبيتك يبدو أنه يعمل بشكل صحيح.
لإنتاج هذا الرسالة، قام Docker باتخاذ الخطوات التالية:
 1. اتصل عميل Docker بدايمون Docker.
 2. قام دايمون Docker بسحب صورة "hello-world" من Docker Hub.
    (amd64)
 3. أنشأ دايمون Docker حاوية جديدة من تلك الصورة التي تشغل
    برنامج قابل للتنفيذ الذي ينتج النتيجة التي تقرأها الآن.
 4. قام دايمون Docker بنقل تلك النتيجة إلى عميل Docker، الذي أرسلها
    إلى محطة التشغيل الخاصة بك.
للإجابة على شيء أكثر طموحًا، يمكنك تشغيل حاوية Ubuntu باستخدام:
 $ docker run -it ubuntu bash
شارك الصور، أتمتة السيناريوهات، وأكثر من ذلك بكافة بيانات التعريف المجانية الخاصة بك:
 https://hub.docker.com/
للمزيد من الأمثلة والأفكار، زر:
 https://docs.docker.com/get-started/

تثبيت باستخدام سكربتات Shell

Docker في get.docker.com و test.docker.com تم تقديم سكربتات مريحة لتنزيل إصدارات الحافة والاختبارات من Docker Engine-Community. مصدر شيفرة السكربت في مستودع docker-install. لا يُنصح باستخدام هذه السكربتات في بيئات الإنتاج، وينبغي عليك فهم المخاطر المحتملة قبل استخدامها:

  • يتطلب السكربت تشغيله كـ root أو بمستوى特权 sudo. لذلك، يجب التحقق والمراجعة بعناية من السكربت قبل تشغيله.

  • هذه السكربتات تحاول اكتشاف إصدار نظام التشغيل Linux وضبط نظام إدارة الحزم لك. بالإضافة إلى ذلك، لا تسمح السكربتات بتخصيص أي معلمات تثبيت. من وجهة نظر Docker أو المعايير واللوائح التي تنظمك، قد يؤدي ذلك إلى تكوين غير مدعوم.

  • هذه السكريpts ستثبت جميع الاعتمادات والموصى بها لإدارة حزمة البرامج دون طلب التأكيد. قد يتم تثبيت عدد كبير من الحزم، اعتمادًا على إعدادات المضيف الحالية.

  • هذا السكريبت لا يقدم خيارًا لتعيين إصدار Docker لتثبيته، بل يثبت أحدث إصدار تم 发布 في قناة edge.

  • إذا كنت قد قمت بتثبيت Docker على المضيف باستخدام ميكانيكية أخرى، فلا تستخدم السكريبت السهل.

هذا المثال يستخدم get.docker.com السكرابت المذكورة تثبيت أحدث إصدار من Docker Engine-Community على Linux. إذا كنت ترغب في تثبيت الإصدار الاختباري الأحدث، استبدل get ب test.docker.com في كل أمر أدناه.

$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh

إذا كنت ترغب في استخدام Docker كمسؤول غير root، فعليك النظر في إضافة المستخدم إلى مجموعة docker باستخدام طريقة مشابهة للآتي:

$ sudo usermod -aG docker your-user