นี่คือ repo สำหรับเว็บไซต์พร็อกซีของทูต
เว็บไซต์นี้ถูกสร้างขึ้นโดยใช้ Jekyll และ Sphinx เพื่อสร้างไฟล์ HTML แบบคงที่ซึ่งจะถูกปรับใช้กับ NetLify
หากคุณติดตั้ง Bazel ในระบบโฮสต์ของคุณคุณสามารถใช้สิ่งนั้นเพื่อจัดการและพัฒนาเว็บไซต์โดยตรง
รุ่นที่คาดหวังของ Bazel สามารถเห็นได้ใน. bazelversion
หากคุณใช้ Bazel โดยตรงบนโฮสต์ของคุณคุณจะต้องมีข้อกำหนดขั้นต่ำของระบบ ข้อกำหนดเหล่านี้สามารถมองเห็นได้สำหรับระบบที่ใช้ Ubuntu ใน Dockerfile ที่ให้ไว้
นอกจากนี้คุณยังสามารถเรียกใช้คำสั่ง Bazel ที่จำเป็นภายในคอนเทนเนอร์ Docker
มีการจัดทำไฟล์นักเทียบท่าเพื่อความสะดวกของคุณซึ่งใช้อิมเมจนักเทียบท่าที่มีข้อกำหนดของระบบที่ Bazel คาดหวังไว้
องค์ประกอบได้รับการออกแบบมาเพื่อใช้ประโยชน์จากแคช Bazel ในระบบโฮสต์ของคุณ
คุณอาจต้องส่งออก UID ของผู้ใช้เพื่อเรียกใช้คอนเทนเนอร์
$ export UIDเนื่องจากทับทิมเป็นสิ่งจำเป็นในการสร้างเว็บไซต์ทับทิมทับทิมจะรวมอยู่ในกฎของ Bazel
สิ่งนี้จะมองหาไบนารีทับทิมที่มีอยู่ในสภาพแวดล้อม
หากพบเวอร์ชันที่ตรงกับรุ่นที่ระบุไว้ในรุ่น. roby มันจะใช้รุ่นนั้น
มิฉะนั้นจะรวบรวมเวอร์ชันทับทิมที่ต้องการแคชไบนารีเพื่อใช้งานต่อไป
หากคุณเรียกใช้คำสั่ง Bazel ภายในคอนเทนเนอร์ Docker มันจะต้องรวบรวมทับทิมเว้นแต่จะพบเวอร์ชันที่รวบรวมและแคชไว้ก่อนหน้านี้
$ 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 ด้วยสูตร Pospose ที่ให้ไว้
$ 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 เรียกว่าเรื่องหน้าซึ่งเป็นมาร์กอัป Yaml ที่ช่วยให้คุณตั้งค่าตัวเลือกเช่นเทมเพลต, ลิงก์และชื่อของหน้า
ทูตยินดีที่จะรับรู้โครงการที่ใช้ซอฟต์แวร์ในการผลิต สิ่งเหล่านี้ไม่ได้มีวัตถุประสงค์เพื่อเป็นโฆษณา แต่เป็นการแสดงการสนับสนุนโครงการ องค์กรที่สนับสนุนทั้งหมดจะแสดงรายการตามลำดับตัวอักษร ในการเพิ่มเข้าไปในรายการผู้ใช้งานของเราคุณต้องมีคุณสมบัติตรงตามเกณฑ์เหล่านี้:
หากต้องการเพิ่มโลโก้ของคุณโปรดส่งคำขอดึง (ดูตัวอย่างนี้)
บล็อกอย่างเป็นทางการของทูตเป็นเจ้าภาพในสื่อที่ https://blog.envoyproxy.io