﻿1
00:00:02,530 --> 00:00:10,610
‫في هذه المحاضرة ، سوف نتحدث عن ربط البيانات المتصاعدة والمستمرة في تلك التصاعد. المتطلبات هي حقًا أنك تعرف فقط إدارة

2
00:00:10,610 --> 00:00:15,300
‫الحاويات وكيفية تشغيل الحاويات.

3
00:00:15,320 --> 00:00:20,230
‫دعنا نقفز. دعونا نتحدث عن ربط يتصاعد. إنها في الواقع رائعة جدًا.

4
00:00:20,240 --> 00:00:25,550
‫عندما علمت عنهم لأول مرة ، أعطاني نوعًا ما فكرة عن كيفية استخدام Docker بسهولة للتنمية

5
00:00:25,550 --> 00:00:26,180
‫المحلية.

6
00:00:26,180 --> 00:00:33,380
‫حقًا ، ربط الربط هو مجرد تعيين لملفات المضيف ، أو الدلائل ، في ملف أو دليل

7
00:00:33,380 --> 00:00:35,330
‫حاوية. يمكنك فعل ذلك بالضبط.

8
00:00:35,330 --> 00:00:39,040
‫يمكنك إما تحديد دليل أو ملف واحد فقط. في الخلفية ، يكون مجرد

9
00:00:39,050 --> 00:00:43,780
‫وجود الموقعين يشير إلى نفس المواقع الفعلية على القرص.

10
00:00:43,910 --> 00:00:49,730
‫مرة أخرى ، يتخطى هذا في الواقع UFS مثل وحدات التخزين الأخرى بحيث لا يمحو

11
00:00:49,730 --> 00:00:52,620
‫موقع المضيف عند حذف الحاوية.

12
00:00:52,640 --> 00:00:58,550
‫إذا كانت هناك أي ملفات في الحاوية تقوم بتعيين ملفات المضيف إليها ، فستفوز ملفات المضيف. لا يقوم في الواقع بحذف الملفات الموجودة

13
00:00:58,550 --> 00:01:03,650
‫في الحاوية التي تم استبدالها لأنها لا تقوم بالفعل بالكتابة فوق أي شيء

14
00:01:03,680 --> 00:01:04,770
‫في الحاوية.

15
00:01:04,910 --> 00:01:07,100
‫إنه هناك فقط بينما يوجد حامل الربط.

16
00:01:07,100 --> 00:01:11,570
‫في اللحظة التي لا تحتاج فيها إلى تحميل الرابط بعد الآن وإعادة تشغيل الحاوية بدونها ،

17
00:01:11,570 --> 00:01:17,650
‫سترى بالفعل البيانات الأساسية التي كانت موجودة من قبل. نظرًا لأن عمليات ربط الربط عادةً ما تكون خاصة بالمضيف

18
00:01:17,660 --> 00:01:21,870
‫، فإنها تحتاج إلى بيانات محددة لتكون على القرص الصلب للمضيف لكي تعمل.

19
00:01:21,890 --> 00:01:23,500
‫لا يمكنك تحديدها في Dockerfile.

20
00:01:23,510 --> 00:01:29,080
‫يجب عليك استخدامها في وقت التشغيل عند استخدام أمر تشغيل حاوية عامل الإرساء. يمكنك رؤية الشكل هنا.

21
00:01:29,090 --> 00:01:33,980
‫إنه حقًا حرف -v الذي استخدمناه من قبل ، فقط على الجانب الأيسر من القولون

22
00:01:34,100 --> 00:01:38,360
‫، نحن في الواقع نضع مسارًا كاملاً بدلاً من مجرد اسم.

23
00:01:38,360 --> 00:01:42,260
‫والطريقة التي يمكن بها Docker في الواقع معرفة الفرق بين الحجم المحدد ، كما

24
00:01:42,410 --> 00:01:46,490
‫فعلنا منذ فترة ، وحامل الربط ، هو أن قاعدة الربط تبدأ بشرطة مائلة للأمام.

25
00:01:46,490 --> 00:01:51,470
‫في نظام التشغيل Windows ، ستلاحظ أنه عبارة عن شريحتين مائلتين للأمام ثم حرف محرك الأقراص ، ثم المسار

26
00:01:51,470 --> 00:01:52,120
‫الخاص بك.

27
00:01:52,130 --> 00:01:57,620
‫طالما لديك النقطتان اليسرى والجانب الأيمن ، يمكنك حقًا تعيين أي شيء تريده من المضيف

28
00:01:57,620 --> 00:02:01,860
‫في الحاوية ، ويمكنك أيضًا تحديد أشياء مثل للقراءة فقط.

29
00:02:01,880 --> 00:02:07,910
‫حيث يتألق هذا حقًا مع خدمات التطوير والتشغيل داخل الحاوية الخاصة بك والتي

30
00:02:07,910 --> 00:02:12,940
‫تصل إلى الملفات التي تستخدمها على مضيفك أو تقوم بتغييرها.

31
00:02:12,950 --> 00:02:14,720
‫لنفعل ذلك مع Nginx.

32
00:02:14,930 --> 00:02:22,370
‫إذا انتقلت إلى جذر المستودع الخاص بنا لهذه الدورة التدريبية ، ثم انتقلنا إلى دليل نموذج Dockerfile

33
00:02:22,370 --> 00:02:24,750
‫2. الآن كنا هنا في وقت سابق.

34
00:02:24,770 --> 00:02:28,580
‫إذا كنت تتذكر ، فهناك ملفان. هذا لـ Nginx ، أليس كذلك؟

35
00:02:28,580 --> 00:02:36,530
‫إذا نظرنا إلى Dockerfile الحقيقي بسرعة ، فهو بسيط جدًا. إنه مجرد تحديد دليل عمل ثم نسخ ملف فهرس

36
00:02:36,560 --> 00:02:39,050
‫إلى هذا الدليل.

37
00:02:39,050 --> 00:02:40,490
‫لا توجد مجلدات هنا.

38
00:02:40,490 --> 00:02:45,290
‫لا يتطلب حامل الربط حجمًا للعمل ، على الرغم من أنه يمكن أن يكون هناك بالتأكيد.

39
00:02:45,530 --> 00:02:52,590
‫المضيف دائما يفوز ، تذكر؟ لذلك ، عندما نقوم بتشغيل حاوية عامل إرساء ، فإننا

40
00:02:52,630 --> 00:02:56,330
‫نقوم بعمل a -d ... دعونا نسميها nginx.

41
00:02:56,390 --> 00:03:00,420
‫دعونا نعطيه المنفذ 8080 كما كان من قبل.

42
00:03:00,770 --> 00:03:06,470
‫ثم سنمنحه الحجم هذه المرة. وأريد أن أخبرها أنه سيتم بالفعل تثبيت دليل العمل

43
00:03:06,650 --> 00:03:12,230
‫الحالي الخاص بي في دليل العمل هذا في الحاوية. نظرًا لأن ملف الفهرس الخاص بي موجود هنا في

44
00:03:12,230 --> 00:03:13,390
‫هذا المجلد ، فأنا

45
00:03:13,430 --> 00:03:19,040
‫أريده أن يكون في الحاوية حتى أتمكن من تحريره هنا ، ويمكن رؤيته مباشرة في الحاوية.

46
00:03:19,040 --> 00:03:20,320
‫لذلك سيكون له معنى في ثانية.

47
00:03:20,540 --> 00:03:24,280
‫إليك نصيحة صغيرة سريعة. بدلاً من الاضطرار إلى اكتشاف طريقي

48
00:03:24,290 --> 00:03:28,370
‫بالكامل وكتابة كل شيء فيه ، يمكنك استخدام pwd هنا على هذا النحو.

49
00:03:28,460 --> 00:03:36,210
‫وهو اختصار shell الذي يقول ، "اطبع دليل العمل واستبدل هذا الأمر بهذا المسار.

50
00:03:36,210 --> 00:03:36,210
‫ثم

51
00:03:36,380 --> 00:03:43,460
‫سنستخدم نفس دليل العمل من Dockerfile هناك ، ثم سنقوم بتحديد

52
00:03:43,460 --> 00:03:45,360
‫صورة Nginx.

53
00:03:47,590 --> 00:03:52,930
‫ما سأفعله ، سريعًا ، هو أنني سأفتح نافذة طرفية أخرى حتى نتمكن من القيام

54
00:03:52,930 --> 00:03:54,480
‫بأمرين في وقت واحد.

55
00:03:54,590 --> 00:03:56,010
‫لا تحتاج حقًا إلى القيام بذلك.

56
00:03:56,050 --> 00:04:01,840
‫في الأساس ، سنقوم فقط بتحرير الملف على مضيفنا ، وبعد ذلك سأكون في الحاوية وأرى

57
00:04:01,840 --> 00:04:02,780
‫ما يحدث.

58
00:04:02,920 --> 00:04:04,730
‫لذلك فقط للتأكد من أنها تعمل ، دعنا

59
00:04:04,780 --> 00:04:06,350
‫نذهب إلى المضيف المحلي.

60
00:04:06,700 --> 00:04:10,000
‫حسنًا ، هذا ليس ملف Nginx HTML الافتراضي.

61
00:04:10,030 --> 00:04:13,080
‫واستخدمنا صورة Nginx العادية.

62
00:04:13,090 --> 00:04:16,580
‫لم نستخدم في الواقع الشخص المخصص من هذا الدليل.

63
00:04:16,690 --> 00:04:24,270
‫لقد استخدمنا للتو صورة مخزون. لإثبات هذه النقطة ، يمكننا فعل الأمر نفسه ، بالضبط

64
00:04:24,280 --> 00:04:37,390
‫مرة أخرى ، لكننا نخرج -v ، وسأقوم بتشغيله على المنفذ 8080 بدلاً من ذلك. وسأسمي هذا nginx2.

65
00:04:37,420 --> 00:04:47,930
‫إذا انتقلت إلى المستعرض الخاص بي وانتقلت إلى localhost 8080 ، فهذا هو مؤشر nginx الافتراضي. ملف html.

66
00:04:48,010 --> 00:04:52,130
‫هذا هو العرف الذي نعيشه في هذا الدليل.

67
00:04:52,780 --> 00:04:56,380
‫لذلك ، يمكننا بالفعل أن نرى أنه رسمها بشكل صحيح.

68
00:04:56,560 --> 00:05:03,010
‫إذا فتحت علامة تبويب أخرى هنا وحصلت على سطر أوامر في الحاوية.

69
00:05:08,800 --> 00:05:10,130
‫ثم انتقل إلى هذا الدليل.

70
00:05:17,710 --> 00:05:21,580
‫ستلاحظ أنه يمكننا بالفعل رؤية Dockerfile لأننا نقوم بتعيين الدليل بأكمله.

71
00:05:21,620 --> 00:05:27,460
‫إذا كنت على اليسار ، إذا أنشأنا ملفًا جديدًا بالفعل ويمكنني فقط استخدام أمر Linux touch هذا

72
00:05:30,440 --> 00:05:37,010
‫لإنشاء ملف جديد. ثم على اليمين ... وجه الفتاة... فقط استمر في نسيان ذلك ... ls -al ، وسترى ذلك

73
00:05:37,010 --> 00:05:37,900
‫في ملفك.

74
00:05:37,970 --> 00:05:43,350
‫نأمل أن تفهم ما يحدث هنا ، أن كلا الموقعين هما نفس الموقع.

75
00:05:43,370 --> 00:05:47,350
‫وإذا رددت شيئًا ما في ملف الاختبار هذا

76
00:05:57,430 --> 00:05:58,420
‫، ثم ...

77
00:06:01,620 --> 00:06:02,410
‫ها أنت ذا.

78
00:06:02,410 --> 00:06:06,670
‫إن nginx الخاص بنا قادر على رؤية التغييرات لأنه مجرد مسار ملف عادي في الحاوية

79
00:06:06,670 --> 00:06:08,720
‫، وهذه الملفات موجودة على المضيف.

80
00:06:08,830 --> 00:06:12,670
‫إذا كنت سأحذفها في الحاوية ، فسيتم حذفها من المضيف لأنها نفس

81
00:06:12,670 --> 00:06:13,210
‫الملف.

82
00:06:13,210 --> 00:06:19,090
‫هذا هو الوقت الذي أحصل فيه عادةً على مطور لجعل تفكيره يفكر في جميع بيئات التطوير التي يمتلكها

83
00:06:19,090 --> 00:06:24,670
‫والتي هي عبارة عن هذا الإعداد المعقد. ربما يستخدمون Vagrant ، أو طريقة يدوية أخرى

84
00:06:24,670 --> 00:06:30,880
‫لإعداد بيئتهم المثالية ، ويمكنهم البدء في رؤية كيف يمكن أن يجعل ذلك الأمر أكثر بساطة.

85
00:06:31,330 --> 00:06:35,920
‫نظرًا لأنني لم أضطر إلى إجراء أي إعداد معقد على جهاز Mac الخاص بي ، فقد قمت بتشغيل حاوية.

86
00:06:35,920 --> 00:06:43,670
‫لقد استخدمت الأمر -v مع أداة التحميل ، والآن يمكن تحرير الكود الخاص بي ، على مضيفي ، على مضيفي.

87
00:06:43,840 --> 00:06:47,890
‫وأنا حقًا لا أحتاج أبدًا إلى الدخول في هيكل الحاوية.

88
00:06:47,890 --> 00:06:52,570
‫عادة ، يمكنك فقط تشغيل الحاوية وإلقاء نظرة على سجلاتها لمعرفة ما إذا كانت هناك أي أخطاء أثناء

89
00:06:52,570 --> 00:06:53,260
‫الترميز.

90
00:06:53,500 --> 00:06:58,750
‫بالطبع ، هذا مثال بسيط مع Nginx. لاحقًا ، سيكون لدينا بالفعل أمثلة محددة

91
00:06:58,750 --> 00:07:03,160
‫لبيئات التطوير المختلفة للتنمية المحلية والحاويات.

