Files
twenty/packages/twenty-docs/l/vi/developers/self-hosting/docker-compose.mdx
T
9bc5486d0d i18n - translations (#15803)
Created by Github action

---------

Co-authored-by: github-actions <github-actions@twenty.com>
2025-11-13 17:12:39 +01:00

215 lines
7.5 KiB
Plaintext

---
title: 1-Click w/ Docker Compose
image: /images/user-guide/objects/objects.png
---
<Frame>
<img src="/images/user-guide/objects/objects.png" alt="Header" />
</Frame>
<Warning>
Docker containers are for production hosting or self-hosting, for the contribution please check the [Local Setup](https://docs.twenty.com/l/vi/developers/local-setup).
</Warning>
## Tổng quan
Hướng dẫn này cung cấp các bước cài đặt và cấu hình ứng dụng Twenty sử dụng Docker Compose. Mục tiêu là làm cho quá trình này đơn giản và tránh những sự cố phổ biến có thể phá vỡ thiết lập của bạn.
**Quan trọng:** Chỉ sửa đổi các cài đặt được nêu cụ thể trong hướng dẫn này. Thay đổi các cấu hình khác có thể dẫn đến sự cố.
Xem tài liệu [Thiết lập Biến môi trường](https://docs.twenty.com/l/vi/developers/self-hosting/setup) để cấu hình nâng cao. Tất cả các biến môi trường phải được khai báo trong file docker-compose.yml tại cấp độ máy chủ và / hoặc công nhân tùy thuộc vào biến.
## System Requirements
- RAM: Đảm bảo môi trường của bạn có ít nhất 2GB RAM. Insufficient memory can cause processes to crash.
- Docker & Docker Compose: Đảm bảo cả hai đã được cài đặt và cập nhật.
## Tùy chọn 1: Tập lệnh một dòng
Cài đặt phiên bản ổn định mới nhất của Twenty với một lệnh duy nhất:
```bash
bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
```
To install a specific version or branch:
```bash
VERSION=vx.y.z BRANCH=branch-name bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
```
- Thay x.y.z bằng số phiên bản mong muốn.
- Thay branch-name bằng tên nhánh bạn muốn cài đặt.
## Tùy chọn 2: Các bước thủ công
Thực hiện các bước này để thiết lập thủ công.
### Bước 1: Thiết Lập Tệp Môi Trường
1. **Tạo tệp .env**
Sao chép tệp môi trường mẫu vào tệp .env mới trong thư mục làm việc của bạn:
```bash
curl -o .env https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/.env.example
```
2. **Tạo Mã Bảo Mật**
Chạy lệnh sau để tạo chuỗi ngẫu nhiên duy nhất:
```bash
openssl rand -base64 32
```
**Quan trọng:** Giữ giá trị này bí mật / không chia sẻ nó.
3. **Cập nhật `.env`**
Thay thế giá trị giữ chỗ trong tệp .env của bạn bằng mã bảo mật đã tạo:
```ini
APP_SECRET=first_random_string
```
4. **Đặt Mật Khẩu Postgres**
Cập nhật giá trị `PG_DATABASE_PASSWORD` trong tệp .env với mật khẩu mạnh không có ký tự đặc biệt.
```ini
PG_DATABASE_PASSWORD=my_strong_password
```
### Bước 2: Nhận Tệp Docker Compose
Tải xuống tệp `docker-compose.yml` vào thư mục làm việc của bạn:
```bash
curl -o docker-compose.yml https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/docker-compose.yml
```
### Bước 3: Khởi Chạy Ứng Dụng
Khởi động các container Docker:
```bash
docker compose up -d
```
### Bước 4: Truy Cập Ứng Dụng
Nếu bạn lưu trữ twentyCRM trên máy tính của mình, mở trình duyệt và điều hướng đến [http://localhost:3000](http://localhost:3000).
Nếu bạn lưu trữ trên máy chủ, hãy kiểm tra máy chủ đang chạy và mọi thứ đều ổn với
```bash
curl http://localhost:3000
```
## Cấu Hình
### Mở rộng Twenty để truy cập bên ngoài
Theo mặc định, Twenty chạy trên `localhost` tại cổng `3000`. Để truy cập qua tên miền hoặc địa chỉ IP bên ngoài, bạn cần cấu hình `SERVER_URL` trong tệp `.env` của bạn.
#### Hiểu về `SERVER_URL`
- **Giao thức:** Sử dụng `http` hoặc `https` tùy thuộc vào thiết lập của bạn.
- Sử dụng `http` nếu bạn chưa thiết lập SSL.
- Sử dụng `https` nếu bạn đã cấu hình SSL.
- **Tên miền/IP:** Đây là tên miền hoặc địa chỉ IP nơi ứng dụng của bạn có thể truy cập.
- **Cổng:** Bao gồm số cổng nếu bạn không sử dụng các cổng mặc định (`80` cho `http`, `443` cho `https`).
### Yêu cầu SSL
SSL (HTTPS) được yêu cầu cho một số tính năng trình duyệt hoạt động chính xác. Mặc dù các tính năng này có thể hoạt động trong quá trình phát triển cục bộ (vì trình duyệt xử lý localhost khác nhau), thiết lập SSL đầy đủ là cần thiết khi lưu trữ Twenty trên tên miền thông thường.
Ví dụ, API clipboard có thể yêu cầu một môi trường bảo mật - một số tính năng như nút sao chép trong ứng dụng có thể không hoạt động khi không kích hoạt HTTPS.
Chúng tôi khuyến nghị mạnh mẽ việc thiết lập Twenty sau proxy ngược với kết thúc SSL để bảo mật và chức năng tối ưu.
#### Cấu hình `SERVER_URL`
1. **Xác Định URL Truy Cập Của Bạn**
- **Không qua Proxy Ngược (Truy Cập Trực Tiếp):**
Nếu bạn đang truy cập ứng dụng trực tiếp mà không qua proxy ngược:
```ini
SERVER_URL=http://your-domain-or-ip:3000
```
- **Qua Proxy Ngược (Các Cổng Tiêu Chuẩn):**
Nếu bạn đang dùng proxy ngược như Nginx hoặc Traefik và đã cấu hình SSL:
```ini
SERVER_URL=https://your-domain-or-ip
```
- **Qua Proxy Ngược (Các Cổng Tùy Chỉnh):**
Nếu bạn đang sử dụng các cổng không chuẩn:
```ini
SERVER_URL=https://your-domain-or-ip:custom-port
```
2. **Cập Nhật Tệp `.env`**
Mở tệp `.env` và cập nhật `SERVER_URL`:
```ini
SERVER_URL=http(s)://your-domain-or-ip:your-port
```
**Ví Dụ:**
- Truy cập trực tiếp không có SSL:
```ini
SERVER_URL=http://123.45.67.89:3000
```
- Truy cập qua tên miền với SSL:
```ini
SERVER_URL=https://mytwentyapp.com
```
3. **Khởi Động Lại Ứng Dụng**
Để thay đổi có hiệu lực, khởi động lại các container Docker:
```bash
docker compose down
docker compose up -d
```
#### Cân nhắc
- **Cấu hình Reverse Proxy:**
Đảm bảo proxy đảo ngược của bạn chuyển tiếp các yêu cầu đến đúng cổng nội bộ (mặc định là `3000`). Cấu hình kết thúc SSL và các tiêu đề cần thiết.
- **Cài đặt Tường lửa:**
Mở các cổng cần thiết trong tường lửa của bạn để cho phép truy cập bên ngoài.
- **Tính nhất quán:**
`SERVER_URL` phải khớp với cách người dùng truy cập ứng dụng của bạn qua trình duyệt.
#### Persistence
- **Data Volumes:**
The Docker Compose configuration uses volumes to persist data for the database and server storage.
- **Môi trường không trạng thái:**
Nếu triển khai vào một môi trường không trạng thái (vd: một số dịch vụ đám mây), cấu hình lưu trữ bên ngoài để lưu trữ dữ liệu.
## Xử lý sự cố
Nếu gặp bất kỳ vấn đề nào, hãy kiểm tra [Xử lý sự cố](https://docs.twenty.com/l/vi/developers/self-hosting/troubleshooting) để tìm giải pháp.