> ## 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.

# 2. 熟悉 Toolkit

### 四處看看

現在您已經有了 Toolkit 的本機副本，讓我們使用 `ls` 指令來看看這個儲存庫的結構。

```bash title="Run this" theme={null}
ls -l
```

> [!NOTE]
>
> `ls -l` 指令會以詳細的長清單格式顯示目錄內容，並提供權限、擁有者與大小等額外的檔案資訊。

如果一切都成功複製，您應該會看到類似以下的內容：

```text theme={null}
drwxr-xr-x 3 fry fry  4096 Aug 30 14:16 bin
-rw-r--r-- 1 fry fry  6465 Aug 30 14:16 CHANGELOG.md
drwxr-xr-x 2 fry fry  4096 Sep  6 12:43 config
drwxr-xr-x 5 fry fry  4096 Aug 30 14:22 data
drwxr-xr-x 3 fry fry  4096 Aug 30 14:16 doc
drwxr-xr-x 3 fry fry  4096 Aug 30 14:16 lib
-rw-r--r-- 1 fry fry 34520 Aug 30 14:16 LICENSE
-rw-r--r-- 1 fry fry  1178 Aug 30 14:16 README.md
```

> [!NOTE]
>
> 所有使用者自有的設定檔都位於 `config/` 目錄中。此目錄**不受** git 版本控制系統管理，因此更新 Toolkit 時不會變更其內容。

## 儲存庫結構

| 名稱 | 說明 |
| - | - |
| `bin` | 此資料夾包含一系列協助您管理 Overleaf 伺服器執行個體的指令碼。您可以在下方的「指令」章節進一步了解這些指令碼。 |
| `config` | 此資料夾包含您自己的本機設定檔。 |
| `lib` | 此資料夾包含 Toolkit 使用的基礎設定檔。 |
| `data` | 預設情況下，此資料夾是 MongoDb、Redis 與 Overleaf 的儲存位置。詳細資訊請參閱下方的[持久性資料](https://ayakaleaf-pro.mintlify.site/zh-TW/on-premises/configuration/overleaf-toolkit/files-and-locations.md#persistent-data)章節。 |

> [!WARNING]
>
> 我們建議**不要**直接修改 `/config` 資料夾以外的檔案。如果需要進行變更，可以透過在 **config/variables.env** 或 **config/overleaf.rc** 中設定環境變數來完成。\
> 例如，若要設定 `mongo` 服務的映像檔，請不要直接編輯 `lib/docker-compose.mongo.yml`，而是在 `config/overleaf.rc` 中使用環境變數 `MONGO_IMAGE` 設定映像檔。詳細資訊請參閱 [Toolkit 設定](https://ayakaleaf-pro.mintlify.site/zh-TW/on-premises/configuration/overleaf-toolkit/toolkit-settings.md)頁面。

> [!NOTE]
>
> 未經您的許可，Toolkit **不會**變更 `config/` 目錄中的任何資料。

## 指令

請在 Toolkit 目錄中執行這些指令碼。每個指令碼都可以使用 `--help` 列出其選項。

| 指令 | 功能 |
| - | - |
| `bin/init` | 首次在 `config/` 中建立設定檔。`bin/init --tls` 會加入 NGINX TLS 代理設定。 |
| `bin/up` | 建立並啟動容器（`bin/docker-compose up`）。加上 `-d` 可在背景執行，而不追蹤日誌。每次變更 `config/` 後都請執行：它會重新建立設定有所變更的容器。 |
| `bin/start` | 重新啟動現有的容器（`bin/docker-compose start`）。不會套用設定變更。 |
| `bin/stop` | 停止容器並保留它們（`bin/docker-compose stop`）。 |
| `bin/docker-compose` | 搭配 Toolkit 的檔案執行 `docker compose`，例如 `bin/docker-compose ps` 或 `bin/docker-compose restart sharelatex`。 |
| `bin/logs` | 顯示或追蹤一個或多個服務的日誌，例如 `bin/logs -f web`。 |
| `bin/error-logs` | 與 `bin/logs` 類似，但只顯示錯誤。 |
| `bin/shell` | 在 `sharelatex` 容器內開啟 shell。 |
| `bin/mongo` | 在 `sharelatex` 資料庫上開啟 MongoDB shell。 |
| `bin/run-script` | 執行 `sharelatex` 容器內附帶的指令碼。 |
| `bin/doctor` | 檢查主機與設定，並輸出一份報告，供您尋求協助時分享。 |
| `bin/images` | 列出主機上的 Overleaf Docker 映像檔。 |
| `bin/backup-config` | 將 `config/` 目錄複製到備份位置（複製、zip 或 tar）。 |
| `bin/upgrade` | 逐步更新 Toolkit 與 Overleaf 映像檔，請參閱[升級您的部署](https://ayakaleaf-pro.mintlify.site/zh-TW/on-premises/maintenance/upgrading-your-deployment.md)。 |
| `bin/rename-env-vars-5-0`、`bin/rename-rc-vars` | 將舊的 `SHARELATEX_*` 變數名稱一次性遷移為 `OVERLEAF_*`。 |

> [!WARNING]
>
> 當 `bin/up` 重新建立容器時，容器內所做的一切變更都會遺失，例如透過 `bin/shell` 安裝的套件或編輯的檔案。只有資料目錄（預設為 `data/`）與 `config/` 會被保留。請改為透過 `config/variables.env`、`config/overleaf.rc` 或 `config/docker-compose.override.yml` 進行永久性的變更。

> [!NOTE]
>
> 如果每次執行 `bin/up` 都會讓所有使用者登出，請設定 `OVERLEAF_SESSION_SECRET`。若未設定，工作階段 cookie 會使用每次重新建立容器時重新產生的密鑰進行簽署，請參閱[環境變數](https://ayakaleaf-pro.mintlify.site/zh-TW/on-premises/configuration/overleaf-toolkit/environment-variables.md)中的問與答。


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