Pro インフラストラクチャ
サービス
Overleaf Pro インフラストラクチャは主に4つのサービスで構成されています: sharelatex, git-bridge (オプション)、 mongo および redis。この sharelatex サービスは、メインの Server Pro アプリケーションを実行し、データベースおよびキャッシュ/リアルタイム機能のために mongo および redis サービスに依存し、 git-bridge は Git 統合 (オプション)を処理します。ホストマシン上で公開される唯一のポートはポート80で、これはコンテナによって提供されます。 sharelatex コンテナ。
Server Pro はオプションで S3 互換ストレージ をプロジェクトファイルおよび完全なプロジェクト履歴のためにサポートし、メインの Overleaf ドキュメントサイトarrow-up-rightへのアクセスをプロキシできるようにします。詳細については、当社のガイドを参照してください: LaTeX ユーザー向けヘルプの追加 ページ。
必要に応じて、MongoDB と Redis は環境変数を使用して外部サービスを指すように外部化できます。詳細については、次を参照してください: Overleaf の構成 (Docker Compose を使用している場合)および Toolkit 設定 (Overleaf Toolkit を使用している場合)。
コンパイル
について Sandboxed Compilesでは、 sharelatex コンテナはプロジェクトのコンパイルを処理するために新しいコンテナの作成をオーケストレーションします;これはホストマシン上の Docker ソケットを介して行われます。エディタとエンドツーエンドのコンパイル/キャッシュプロセスの詳細は こちら.
ネットワーキング
コンテナ間の通信は専用のブリッジネットワークを介した Docker の内部 DNS 解決によって促進されており、ファイアウォールは有効になっていません。デフォルトでは、上記のサービスはそれぞれ標準ポートを使用しますが、環境変数で構成可能です。 sharelatex コンテナは外部の Web アクセスにポート80(Nginx が提供)を使用し、 mongo コンテナはポート27017を使用し、 redis はポート6379を使用します。
当社のマネージドソリューションを利用しているお客様向けに Overleaf Toolkitarrow-up-right、オプションで TLS プロキシを有効にする ことで、環境変数を介して Nginx を使用して HTTPS 接続を終端することができます。あるいは、既存の TLS プロキシを使用することも可能です。
リクエストのフローを説明する図を表示できます こちら.
概要
Docker ネットワークの外側では、ポート80 のみがアクセス可能で Nginx にバインドされています。 注意: この
sharelatexコンテナは多くの servicesarrow-up-right を実行しており、それらは HTTP を介して相互に通信します。しかし、これらのポートは 外部からは アクセスできません。Docker ネットワーク内では、Overleaf サービス、MongoDB、Redis、Git Bridge は互いに自由に通信できます。
コンテナ内では、ネットワークは利用できません。 Sandboxed Compiles コンテナ内では、ネットワークは利用できません。
関連トピックについては、次を参照してください:
最終更新