> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 概述

Overleaf 以多个服务的形式运行，这些服务在 Docker 网络内通过 HTTP 相互调用。本节的页面介绍这些内部 API。内容来自 [`develop/hoppscotch/openapi/`](https://github.com/ayaka-notes/ayakaleaf-pro/tree/server-pro/develop/hoppscotch/openapi) 中的 OpenAPI 文件，这些文件依据各服务的代码编写。

这些 API 都不是公开的：它们只能在 Docker 网络内访问，而且大多数没有认证。

## 服务

| 服务 | 地址 | 作用 |
| - | - | - |
| [web](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/web.md) | `http://web:3000` | 主应用。其私有 API 由其他服务和镜像中的 cron 脚本调用 |
| [document-updater](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/document-updater.md) | `http://document-updater:3003` | 将编辑器中打开的文档保存在 Redis 中，应用编辑并写回 Mongo |
| [docstore](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/docstore.md) | `http://docstore:3016` | 将每个项目的每个文档存储在 Mongo 的 `docs` 集合中 |
| [real-time](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/real-time.md) | `http://real-time:3026` | 维护编辑器的 socket.io 连接，在浏览器和服务之间转发编辑 |
| [chat](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/chat.md) | `http://chat:3010` | 存储项目聊天和评论线程 |
| [project-history](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/project-history.md) | `http://project-history:3054` | 将排队的编辑转换为历史变更并发送给 history-v1；保存标签 |
| [history-v1](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/history-v1.md) | `http://history-v1:3100` | 存储每个项目的完整历史，并以 blob 形式存储文件内容 |
| [filestore](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/filestore.md) | `http://filestore:3009` | 提供模板文件，并以只读方式提供 history-v1 写入的 blob |
| [clsi](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/clsi.md) | `http://clsi:3013` | 编译项目，运行 SyncTeX 和字数统计，转换文档 |
| [notifications](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/notifications.md) | `http://notifications:3042` | 存储项目列表中显示的通知 |
| [linked-url-proxy](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/linked-url-proxy.md) | `http://linked-url-proxy:3066` | 为 web 获取外部 URL 并拒绝内部地址 |
| [third-party-datastore](https://ayakaleaf-pro.mintlify.site/zh-CN/dev/service-api/third-party-datastore.md) | `http://third-party-datastore:3002` | 通过每个用户一个任务队列将项目与 Dropbox 同步 |

## 认证

* **web：**使用 `WEB_API_USER` 和 `WEB_API_PASSWORD` 的 HTTP 基本认证。git-bridge 路由改用个人访问令牌。
* **history-v1：**使用 `STAGING_PASSWORD` 以 `staging` 身份进行 HTTP 基本认证，或使用 JWT。
* **其他所有服务：**无。

## 试用

开发环境在 `http://localhost:9170` 上运行 [Hoppscotch](https://github.com/hoppscotch/hoppscotch)，并配有通过 Docker 地址访问各服务的代理。其 [README](https://github.com/ayaka-notes/ayakaleaf-pro/blob/server-pro/develop/README.md#hoppscotch) 介绍了如何设置代理和导入 OpenAPI 文件。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.