هذا هو الريبو لموقع Proxy Envoy.
تم تصميم هذا الموقع باستخدام Jekyll و Sphinx لإنشاء ملفات HTML ثابتة ، والتي يتم نشرها بعد ذلك باستخدام NetLify.
إذا كنت قد تم تثبيت Bazel على نظام المضيف الخاص بك ، فيمكنك استخدام ذلك لإدارة وتطوير الموقع مباشرة.
يمكن رؤية النسخة المتوقعة من Bazel في.
إذا كنت تستخدم Bazel مباشرة على مضيفك ، فستحتاج إلى بعض متطلبات النظام الدنيا. يمكن رؤية هذه المتطلبات لنظام قائم على Ubuntu في Dockerfile المقدمة.
يمكنك أيضًا تشغيل أوامر Bazel اللازمة داخل حاوية Docker.
تم توفير ملف Docker-Corpose لراحتك ، والذي يستخدم صورة Docker التي تحتوي على متطلبات النظام المتوقعة بواسطة Bazel.
تم تصميم التكوين للاستفادة من ذاكرة التخزين المؤقت للبزل على نظام المضيف الخاص بك.
قد تحتاج إلى تصدير UID للمستخدم لتشغيل الحاوية.
$ export UIDنظرًا لأن Ruby مطلوب لإنشاء موقع الويب ، يتم تضمين مجموعة أدوات Ruby في قواعد Bazel.
سيبحث هذا عن أي ثنائيات الياقوت المتاحة في بيئتها.
إذا وجدت نسخة مطابقة للإصدار المحدد في .ruby-version ، فسيستخدم ذلك.
خلاف ذلك ، فإنه سيقوم بتجميع نسخة Ruby المطلوبة ، وتخزين المؤقت الثنائي لمزيد من الاستخدام.
إذا قمت بتشغيل أوامر Bazel داخل حاوية Docker ، فسوف تحتاج إلى تجميع Ruby ما لم يجد نسخة تم تجميعها مسبقًا وتخزينها مؤقتًا.
$ bazel run //site:liveيجب أن يكون الموقع متاحًا الآن من خلال زيارة http: // localhost: 4000.
بشكل افتراضي فقط موقع الويب وليس الوثائق يتم تقديمها بواسطة هذه البيئة.
يمكنك عرض الموقع بأكمله ، المصمم بأحدث الوثائق ، بما يلي:
$ export ENVOY_COMMIT= " $( bazel run //docs:latest_version ) "
$ bazel run --action_env=ENVOY_COMMIT //site:live_docsالتغييرات التي تم إجراؤها على المحتوى في مجلدات jekyll التي تم تعبئتها تحت الحدود ، ستؤدي إلى إعادة تحميل خادم فوري.
يمكنك تشغيل موقع الويب داخل حاوية Docker مع وصفة مؤلفة.
$ docker-compose up liveبشكل افتراضي فقط موقع الويب وليس الوثائق يتم تقديمها بواسطة هذه البيئة.
يمكنك عرض الموقع بأكمله ، المصمم بأحدث الوثائق ، بما يلي:
$ docker-compose up live_docsالتغييرات التي تم إجراؤها على المحتوى في مجلدات jekyll التي تم تعبئتها تحت الحدود ، ستؤدي إلى إعادة تحميل خادم فوري.
هدف Bazel لإنشاء موقع الويب بأكمله هو:
$ export ENVOY_COMMIT= " $( bazel run //docs:latest_version ) "
$ bazel build --action_env=ENVOY_COMMIT //site:html يوجد نص مريح (كما هو مستخدم في CI) من شأنه أن يبني في مجلد _site في الدليل الحالي:
$ ./build-website.sh سيقوم الأمر التالي بإنشاء موقع الويب بأكمله ، بما في ذلك جميع الوثائق ، إلى مجلد _site في الدليل الحالي:
$ docker-compose run buildلإسقاط حاوية Docker ، مع تكوين تعيينات المنفذ في ملف التكوين:
$ docker-compose run -p 4000:4000 live bashمن هناك يمكنك تشغيل أوامر Bazel مباشرة ، على سبيل المثال:
username@73deecbfaf55:/src/workspace/envoy-website $ bazel run //docs:latest_version
...
b200312ddcbc4d237cd197a42cdd8c66cc8c6af0
| غرض | طريق |
|---|---|
| محتوى الصفحة الرئيسية | _data/home.yml |
| روابط NAV على الصفحة الرئيسية | _data/nav.yml |
| الوثائق (التي تم إنشاؤها تلقائيًا) | docs |
لإنشاء صفحة جديدة ، كل ما عليك فعله هو إنشاء ملف جديد في دليل الجذر. يمكن أن يكون هذا الملف إما ملف Markdown أو ملف HTML.
يجب أن يحتوي الملف الجديد على ما يسميه Jekyll Matter Matter ، وهو وضع علامة YAML بشكل أساسي والذي يتيح لك تعيين خيارات مثل القالب ، والثبات ، وعنوان الصفحة.
يسعد Envoy التعرف على المشاريع التي تستخدم البرنامج في الإنتاج. لا يُقصد أن تكون إعلانًا ، ولكن عرض دعم للمشروع. سيتم سرد جميع المنظمات الداعمة بالترتيب الأبجدي. لإضافتها إلى قائمة المتبني الخاصة بنا ، يجب عليك تلبية هذه المعايير:
لإضافة شعارك ، يرجى إرسال طلب سحب (انظر هذا كمثال).
يتم استضافة مدونة المبعوث الرسمي على متوسطة على https://blog.envoyproxy.io.