---
title: 本地设置
icon: laptop-code
description: 本指南适用于希望在本地运行 Twenty 的贡献者或好奇的开发人员。
---
## 先决条件
在安装和使用 Twenty 之前,请确保在您的计算机上安装以下内容:
* [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
* [Node v24.5.0](https://nodejs.org/en/download)
* [yarn v4](https://yarnpkg.com/getting-started/install)
* [nvm](https://github.com/nvm-sh/nvm/blob/master/README.md)
`npm` 无法使用,您应该改用 `yarn`。 Yarn 现在与 Node.js 一起提供,因此您不需要单独安装它。
如果您尚未执行此操作,只需运行 `corepack enable` 即可启用 Yarn。
1. 安装 WSL
以管理员身份打开 PowerShell 并运行:
```powershell
wsl --install
```
现在您应该看到一个提示,要求您重启计算机。 如果没有,请手动重启。
重启后,将打开一个 PowerShell 窗口并安装 Ubuntu。 这可能需要一些时间。
您将看到一个提示,要求为您的 Ubuntu 安装创建用户名和密码。
2. 安装和配置 git
```bash
sudo apt-get install git
git config --global user.name "Your Name"
git config --global user.email "youremail@domain.com"
```
3. 安装 nvm、node.js 和 yarn
使用 `nvm` 安装正确的 `node` 版本。 `.nvmrc` 确保所有贡献者使用相同的版本。
```bash
sudo apt-get install curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
```
关闭并重新打开您的终端以使用 nvm。 然后运行以下命令。
```bash
nvm install # installs recommended node version
nvm use # use recommended node version
corepack enable
```
---
## 步骤 1:Git 克隆
在您的终端中,运行以下命令。
如果您尚未设置 SSH 密钥,您可以在 [这里](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/about-ssh) 学习如何设置。
```bash
git clone git@github.com:twentyhq/twenty.git
```
```bash
git clone https://github.com/twentyhq/twenty.git
```
## 步骤 2:定位到项目根目录
```bash
cd twenty
```
您应该从项目的根目录运行以下步骤中的所有命令。
## 步骤 3:设置 PostgreSQL 数据库
\*\*选项 1(首选):\*\*要在本地预配您的数据库:
使用以下链接在 Linux 机器上安装 PostgreSQL:[PostgreSQL 安装](https://www.postgresql.org/download/linux/)
```bash
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
注意:您可能需要在命令 `psql` 前添加 `sudo -u postgres` 以避免权限错误。
\*\*选项 2:\*\*如果您已安装 docker:
```bash
make -C packages/twenty-docker postgres-on-docker
```
\*\*选项 1(推荐):\*\*通过 `brew` 在本地设置数据库:
```bash
brew install postgresql@16
export PATH="/opt/homebrew/opt/postgresql@16/bin:$PATH"
brew services start postgresql@16
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
您可以通过执行以下操作来验证 PostgreSQL 服务器是否正在运行:
```bash
brew services list
```
在 macOS 上通过 Homebrew 安装时
安装程序可能不会默认创建 `postgres` 用户。 相反,它会创建一个与您的 macOS 用户名(例如,“john”)匹配的 PostgreSQL 角色。
按照以下步骤检查并在必要时创建 `postgres` 用户:
```bash
# Connect to PostgreSQL
psql postgres
or
psql -U $(whoami) -d postgres
```
在 psql 提示符(postgres=#)下,运行:
```bash
# List existing PostgreSQL roles
\du
```
您将看到类似于以下的输出:
```bash
Role name | Attributes | Member of
-----------+-------------+-----------
john | Superuser | {}
```
如果您没有看到 `postgres` 角色列出,请继续下一步。
手动创建 `postgres` 角色:
```bash
CREATE ROLE postgres WITH SUPERUSER LOGIN;
```
这将创建一个具备登录权限名为 `postgres` 的超级用户角色。
```bash
角色名 | 属性 | 成员
-----------+-------------+-----------
postgres | 超级用户 | {}
john | 超级用户 | {}
```
\*\*选项 2:\*\*如果您已安装 docker:
```bash
make -C packages/twenty-docker postgres-on-docker
```
以下所有步骤应在 WSL 终端(在您的虚拟机内)中运行
\*\*选项 1:\*\*要在本地预配您的 PostgreSQL:
使用以下链接在 Linux 虚拟机上安装 PostgreSQL:[PostgreSQL 安装](https://www.postgresql.org/download/linux/)
```bash
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
注意:您可能需要在命令 `psql` 前添加 `sudo -u postgres` 以避免权限错误。
\*\*选项 2:\*\*如果您已安装 docker:
在 WSL 上运行 Docker 增加了额外的复杂性。
仅在您对涉及的额外步骤感到舒适时使用此选项,包括开启 [Docker Desktop WSL2](https://docs.docker.com/desktop/wsl)。
```bash
make -C packages/twenty-docker postgres-on-docker
```
您现在可以通过 `localhost:5432` 访问数据库。
如果您使用了上面的 Docker 选项,默认凭据为用户 `postgres`、密码 `postgres`。 对于原生 PostgreSQL 安装,请使用在您的机器上已配置的凭据和角色。
## 步骤 4:设置 Redis 数据库(缓存)
Twenty 需要 Redis 缓存来提供最佳性能。
\*\*选项 1:\*\*在本地供应您的 Redis:
使用以下链接在 Linux 机器上安装 Redis:[Redis 安装](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
\*\*选项 2:\*\*如果您已安装 docker:
```bash
make -C packages/twenty-docker redis-on-docker
```
\*\*选项 1(推荐):\*\*通过 `brew` 在本地设置 Redis:
```bash
brew install redis
```
启动您的 Redis 服务器:
```bash
brew services start redis
```
\*\*选项 2:\*\*如果您已安装 docker:
```bash
make -C packages/twenty-docker redis-on-docker
```
\*\*选项 1:\*\*在本地供应您的 Redis:
使用以下链接在 Linux 虚拟机上安装 Redis:[Redis 安装](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
\*\*选项 2:\*\*如果您已安装 docker:
```bash
make -C packages/twenty-docker redis-on-docker
```
如果您需要客户端 GUI,我们推荐 [Redis Insight](https://redis.io/insight/)(提供免费版本)。
## 步骤 5:设置环境变量
使用环境变量或 `.env` 文件配置您的项目。 更多信息请参见 [此处](/l/zh/developers/self-host/capabilities/setup).
复制 `/front` 和 `/server` 目录中的 `.env.example` 文件:
```bash
cp ./packages/twenty-front/.env.example ./packages/twenty-front/.env
cp ./packages/twenty-server/.env.example ./packages/twenty-server/.env
```
**多工作区模式:** 默认情况下,Twenty 以单工作区模式运行,在此模式下只能创建一个工作区。 要启用多工作区支持(对于测试基于子域的功能很有用),请在服务器的 `.env` 文件中设置 `IS_MULTIWORKSPACE_ENABLED=true`。 详见 [多工作区模式](/l/zh/developers/self-host/capabilities/setup#multi-workspace-mode)。
## 步骤 6:安装依赖项
要构建 Twenty 服务器并向你的数据库预置一些数据,请运行以下命令:
```bash
yarn
```
注意 `npm` 或 `pnpm` 将不起作用
## 步骤 7:运行项目
根据您的 Linux 发行版,Redis 服务器可能会自动启动。
如果没有,请查看您的发行版的 [Redis 安装指南](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/)。
Redis 应该已经在运行中。 如果没有,运行:
```bash
brew services start redis
```
根据您的 Linux 发行版,Redis 服务器可能会自动启动。
如果没有,请查看您的发行版的 [Redis 安装指南](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/)。
使用以下命令设置您的数据库:
```bash
npx nx database:reset twenty-server
```
启动服务器、工作程序和前端服务:
```bash
npx nx start twenty-server
npx nx worker twenty-server
npx nx start twenty-front
```
或者,您可以一次启动所有服务:
```bash
npx nx start
```
## 步骤 8:使用 Twenty
**前端**
Twenty 的前端将在 [http://localhost:3001](http://localhost:3001) 运行。
您可以使用默认的演示帐号登录:`tim@apple.dev` (密码:`tim@apple.dev`)
**后端**
* Twenty 的服务器将在 [http://localhost:3000](http://localhost:3000) 启动并运行
* 可在 [http://localhost:3000/graphql](http://localhost:3000/graphql) 访问 GraphQL API
* 可通过 [http://localhost:3000/rest](http://localhost:3000/rest) 访问 REST API
## 故障排除
如果您遇到任何问题,请检查[故障排除](/l/zh/developers/self-host/capabilities/troubleshooting)以获取解决方案。