> For the complete documentation index, see [llms.txt](https://ayakaleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ayakaleaf-pro.ayaka.space/on-premises/vi/bat-dau/what-is-the-overleaf-toolkit.md).

# Bộ công cụ Ayakaleaf là gì?

Bộ công cụ ayakaleaf là phương thức triển khai được khuyến nghị cho các cài đặt tại chỗ của Community Edition, Ayakaleaf Pro, nó được thiết kế để hoạt động với môi trường phổ biến nhất: một máy chủ vật lý hoặc máy ảo duy nhất. Bộ công cụ sử dụng `docker compose` để quản lý các container Docker của máy chủ bạn và cung cấp một bộ script bao bọc `docker` các lệnh để hỗ trợ phần kỹ thuật hơn trong việc quản lý phiên bản Overleaf tại chỗ.

#### Phần `bin/docker-compose` trình bao bọc

Phần `bin/docker-compose` script là một trình bao bọc cho `docker compose`. Nó tải cấu hình từ `thư mục config/` trước khi gọi `docker compose` với bất kỳ đối số nào đã được truyền cho script.

Bạn có thể xem `bin/docker-compose` như một trình bao bọc trong suốt cho `docker compose` chương trình được cài đặt trên máy của bạn.

Ví dụ:

{% code title="Kiểm tra các container đang chạy" %}

```bash
$ bin/docker-compose ps
```

{% endcode %}

#### Các trợ giúp tiện lợi

Ngoài `bin/docker-compose`, Bộ công cụ cung cấp các script tiện dụng để hỗ trợ những tác vụ thường gặp:

* `bin/up`: lối tắt cho `bin/docker-compose up`
* `bin/start`: lối tắt cho `bin/docker-compose start`
* `bin/stop`: lối tắt cho `bin/docker-compose stop`
* `bin/shell`: mở một shell bên trong container **sharelatex** container
* `bin/doctor`: script dùng để thu thập thông tin cài đặt và triển khai. Xem phần "Kiểm tra máy chủ của bạn" bên dưới
* `bin/mongo`: mở một shell bên trong container **mongo** container và chuyển sang cơ sở dữ liệu đúng (**sharelatex**)
* `bin/backup-config`: tạo một bản sao (zip hoặc tar) của cấu hình hiện tại của bạn và lưu nó vào một thư mục đích do bạn chọn
* `bin/logs`: xem/đi theo nhật ký dịch vụ
* `bin/error-logs`: xem/đi theo nhật ký lỗi của dịch vụ
* `bin/rename-env-vars-5-0`: script di chuyển để cập nhật các biến môi trường trong **config/variables.env** (đổi thương hiệu từ ShareLaTeX sang Overleaf)
* `bin/rename-rc-vars`: script di chuyển để cập nhật các biến môi trường trong **config/overleaf.rc** (đổi thương hiệu từ ShareLaTeX sang Overleaf)
* `bin/run-script`: trợ giúp để đơn giản hóa việc chạy các script được lưu trong **sharelatex** container
* `bin/upgrade`: hỗ trợ nâng cấp phiên bản. Script sẽ kiểm tra các bản cập nhật của Toolkit (qua git) và đề nghị kéo các thay đổi về, kiểm tra phiên bản image Docker mới nhất và đề nghị cập nhật. Nó cung cấp xác nhận từng bước, tùy chọn sao lưu cấu hình hiện tại, và xử lý việc dừng/khởi động các dịch vụ Docker. Xem Nâng cấp bản triển khai của bạn để biết thêm thông tin: <https://docs.overleaf.com/on-premises/maintenance/upgrading-your-deployment>

{% hint style="info" %}
Nếu bạn muốn chạy phiên bản của mình mà không gắn với nhật ký Docker, bạn có thể chạy `bin/up -d` để chạy ở chế độ tách rời.
{% endhint %}

#### Kiểm tra máy chủ của bạn

Overleaf Toolkit bao gồm một script hữu ích có tên `bin/doctor` tạo ra một báo cáo chỉ ra mọi phụ thuộc chưa được đáp ứng.

Trước khi tiếp tục, hãy chạy `bin/doctor` script và kiểm tra xem mọi thứ có hoạt động đúng không:

{% code title="Chạy Overleaf Doctor" %}

```bash
bin/doctor
```

{% endcode %}

Ví dụ đầu ra (đã rút gọn/minh họa):

<details>

<summary>Đầu ra mẫu từ bin/doctor</summary>

```
====== Overleaf Doctor ======
- Thông tin máy chủ
    - Linux
    - Đầu ra của 'lsb_release -a':
            Không có mô-đun LSB nào khả dụng.
            ID nhà phân phối:     Ubuntu
            Mô tả:        Ubuntu 22.04.5 LTS
            Phát hành:    22.04
            Mã tên:   jammy
- Các phụ thuộc
    - bash
        - trạng thái: có sẵn
        - thông tin phiên bản: 5.1.16(1)-release
    - docker
        - trạng thái: có sẵn
        - thông tin phiên bản: Docker version 27.3.1, build ce12230
    - realpath
        - trạng thái: có sẵn
        - thông tin phiên bản: realpath (GNU coreutils) 8.32
    - perl
        - trạng thái: có sẵn
        - thông tin phiên bản: 5.034000
    - awk
        - trạng thái: có sẵn
        - thông tin phiên bản: GNU Awk 5.1.0, API: 3.0 (GNU MPFR 4.1.0, GNU MP 6.2.1)
    - openssl
        - trạng thái: có sẵn
        - thông tin phiên bản: OpenSSL 3.0.2 15 Mar 2022 (Thư viện: OpenSSL 3.0.2 15 Mar 2022)
    - docker compose
        - trạng thái: có sẵn
        - thông tin phiên bản: Docker Compose version v2.29.7
- Docker Daemon
    - trạng thái: đang chạy
====== Cấu hình ======
- config/version
    - trạng thái: có sẵn
    - phiên bản: 5.1.1
- config/overleaf.rc
    - trạng thái: có sẵn
    - các giá trị
        - OVERLEAF_DATA_PATH: data/overleaf
        - OVERLEAF_LOG_PATH: data/overleaf/logs
        - SERVER_PRO: true
            - đã đăng nhập vào quay.io: true
        - SIBLING_CONTAINERS_ENABLED: true
        - OVERLEAF_LISTEN_IP: 0.0.0.0
        - OVERLEAF_PORT: 80
        - MONGO_ENABLED: true
        - MONGO_IMAGE: mongo
        - MONGO_VERSION: 6.0
        - MONGO_DATA_PATH: data/mongo
        - REDIS_ENABLED: true
        - REDIS_IMAGE: redis:6.2
        - REDIS_DATA_PATH: data/redis
- config/variables.env
    - trạng thái: có sẵn
    - các giá trị
        - OVERLEAF_FILESTORE_BACKEND: fs
        - OVERLEAF_HISTORY_BACKEND: fs
====== Cảnh báo ======
- Không có, mọi thứ đều ổn
====== Kết thúc ======
```

</details>

Nếu thiếu bất kỳ phụ thuộc nào, doctor sẽ in ra cảnh báo. Nếu bạn gặp sự cố, trước tiên hãy chạy `bin/doctor` và kiểm tra đầu ra của nó để tìm cảnh báo.

{% hint style="info" %}

* Người dùng của Ayakaleaf Pro Edition có thể mở một issue trên GitHub: <https://github.com/ayaka-notes/toolkit/issues>

Trong cả hai trường hợp, hãy bao gồm đầu ra của `bin/doctor` trong tin nhắn của bạn.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ayakaleaf-pro.ayaka.space/on-premises/vi/bat-dau/what-is-the-overleaf-toolkit.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
