これは、Envoy Proxy Webサイトのレポです。
このWebサイトは、JekyllとSphinxを使用して構築され、静的HTMLファイルを生成し、Netlifyで展開します。
ホストシステムにBazelをインストールしている場合は、それを使用してサイトを直接管理および開発できます。
Bazelの予想バージョンは.Bazelversionで見ることができます。
ホストでBazelを直接使用する場合、最小限のシステム要件が必要になります。これらの要件は、提供されたDockerFileのUbuntuベースのシステムで見ることができます。
Dockerコンテナ内で必要なバゼルコマンドを実行することもできます。
Bazelが予想されるシステム要件を含むDocker画像を使用する便利なために、Docker-Composeファイルが提供されています。
構成は、ホストシステムでバゼルキャッシュを使用するように設計されています。
ユーザーのUIDをエクスポートしてコンテナを実行する必要がある場合があります。
$ export UIDRubyはWebサイトを構築するために必要であるため、RubyツールチェーンはBazelルールに含まれています。
これにより、環境で利用可能なルビーバイナリが探しられます。
.ruby-versionで指定されたバージョンに一致するバージョンが見つかった場合、それはそれを使用します。
それ以外の場合は、必要なRubyバージョンをコンパイルし、さらに使用するためにバイナリをキャッシュします。
Dockerコンテナ内でBazelコマンドを実行する場合、以前にコンパイルされたキャッシュバージョンが見つからない限り、Rubyをコンパイルする必要があります。
$ bazel run //site:liveサイトは、http:// localhost:4000にアクセスして利用できるようになりました。
デフォルトでは、ドキュメントではなくウェブサイトのみがこの環境で提供されます。
次のように、最新のドキュメントで構築されたサイト全体を表示できます。
$ export ENVOY_COMMIT= " $( bazel run //docs:latest_version ) "
$ bazel run --action_env=ENVOY_COMMIT //site:live_docsUnderscore-Prefixed Jekyllフォルダーのコンテンツに変更が加えられ、即時のサーバーのリロードがトリガーされます。
提供されたComposeレシピを使用して、Dockerコンテナ内でWebサイトを実行できます。
$ docker-compose up liveデフォルトでは、ドキュメントではなくウェブサイトのみがこの環境で提供されます。
次のように、最新のドキュメントで構築されたサイト全体を表示できます。
$ docker-compose up live_docsUnderscore-Prefixed Jekyllフォルダーのコンテンツに変更が加えられ、即時のサーバーのリロードがトリガーされます。
Webサイト全体を構築するためのBazelターゲットは次のとおりです。
$ export ENVOY_COMMIT= " $( bazel run //docs:latest_version ) "
$ bazel build --action_env=ENVOY_COMMIT //site:html現在のディレクトリの_siteフォルダーに構築される便利なスクリプト(CIで使用)があります。
$ ./build-website.sh次のコマンドは、すべてのドキュメントを含むWebサイト全体を現在のディレクトリの_siteフォルダーに構築します。
$ docker-compose run buildポートマッピングが構成ファイルで構成されているドッカーコンテナにドロップします。
$ 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 |
新しいページを作成するには、ルートディレクトリに新しいファイルを作成するだけです。このファイルは、マークダウンファイルまたはHTMLファイルのいずれかです。
新しいファイルには、JekyllがFront Matterと呼ぶものを含める必要があります。これは、テンプレート、パーマリンク、ページのタイトルなどのオプションを設定できる本質的にYAMLマークアップです。
特使は、生産でソフトウェアを使用するプロジェクトを喜んで認識しています。これらは広告ではなく、プロジェクトへのサポートのショーです。すべてのサポート組織は、アルファベット順にリストされます。採用リストに追加するには、これらの基準を満たす必要があります。
ロゴを追加するには、プルリクエストを送信してください(これを例として参照してください)。
公式のEnvoyブログは、https://blog.envoyproxy.ioでMediumでホストされています。