يمتلك مشروع Vagrant مسار تنزيل على المضيف قبل وجود الضيف، ومساراً آخر لمزوّدي الضيف وأدوات الحزم. اضبط كل واحد حيث يعمل.

بالنسبة لأدوات المضيف التي تستهلك هذه المتغيرات، مثال على المسار هو:

export http_proxy=http://gateway.example:8080
export https_proxy=http://gateway.example:8080

يوثّق Vagrant المتغير http_proxy لتنزيلات صناديق HTTP. كما يحتاج الحصول على الملحقات إلى إمكانية الوصول من المضيف؛ فملحق إعداد الضيف لا يستطيع تنزيل نفسه. وقد تستخدم وجهات HTTPS قيمة وكيل HTTP رغم ذلك. وللتنزيلات العامة المسموح بها عندما لا تكون بيانات اعتماد الوكيل مضبوطة على عميل المضيف أو الضيف المعني، يمكن أن توفّر قائمة وكلاء HTTP نقاط نهاية HTTP مرشحة.

عند تثبيت vagrant-proxyconf المتوافق مسبقاً، امنح الضيف مساره عبر Vagrantfile:

Vagrant.configure("2") do |config|
  if Vagrant.has_plugin?("vagrant-proxyconf")
    config.proxy.http = "http://gateway.example:8080"
    config.proxy.https = "http://gateway.example:8080"
    config.proxy.no_proxy = "localhost,127.0.0.1"
  end
end

يكتب الملحق إعداد الضيف المدعوم قبل المزوّدين. ويمكن لمدخلات VAGRANT_HTTP_PROXY والمدخلات ذات الصلة أن تتجاوز إعدادات الملف، لذا افحصها عندما لا تسري التعديلات.

من منظور الضيف، تعني localhost الضيف نفسه. ويحتاج الوكيل الموجود على loopback الخاص بالمضيف إلى مسار يمكن الوصول إليه صراحةً بدلاً من عنوان URL مضيف منسوخ. كما ينتهي export الخاص بمزوّد shell مع ذلك الصدفة وأبنائها؛ ولا يؤسس سياسة تسجيل دخول أو خدمة لاحقة.

للإزالة، امسح الإعداد المكتوب مسبقاً في الضيف باستخدام المدخلات الفارغة/الخاطئة الموثقة للملحق. وإغلاق طرفية المضيف لا يزيل تلك الملفات الدائمة.

مقالات ذات صلة