319 lines
10 KiB
Plaintext
319 lines
10 KiB
Plaintext
---
|
|
title: Configuração Local
|
|
icon: laptop-code
|
|
description: O guia para contribuidores (ou desenvolvedores curiosos) que desejam executar o Twenty localmente.
|
|
---
|
|
|
|
## Pré-requisitos
|
|
|
|
<Tabs>
|
|
<Tab title="Linux e macOS">
|
|
|
|
Antes de instalar e usar o Twenty, certifique-se de instalar o seguinte em seu computador:
|
|
* [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)
|
|
|
|
<Warning>
|
|
`npm` não funcionará, você deve usar `yarn` em vez disso. O Yarn agora vem com o Node.js, então você não precisa instalá-lo separadamente.
|
|
Você só precisa executar `corepack enable` para habilitar o Yarn, se ainda não o fez.
|
|
</Warning>
|
|
|
|
</Tab>
|
|
|
|
<Tab title="Windows (WSL)">
|
|
|
|
1. Instale o WSL
|
|
Abra o PowerShell como Administrador e execute:
|
|
```powershell
|
|
wsl --install
|
|
```
|
|
Você deve agora ver um aviso para reiniciar o computador. Caso contrário, reinicie-o manualmente.
|
|
|
|
Ao reiniciar, uma janela do PowerShell será aberta e instalará o Ubuntu. Isso pode levar algum tempo.
|
|
Você verá uma solicitação para criar um nome de usuário e senha para sua instalação do Ubuntu.
|
|
|
|
2. Instalar e configurar o git
|
|
|
|
```bash
|
|
sudo apt-get install git
|
|
|
|
git config --global user.name "Your Name"
|
|
|
|
git config --global user.email "youremail@domain.com"
|
|
```
|
|
|
|
3. Instale nvm, node.js e yarn
|
|
|
|
<Warning>
|
|
Use `nvm` para instalar a versão correta do `node`. O `.nvmrc` garante que todos os contribuidores usem a mesma versão.
|
|
</Warning>
|
|
|
|
```bash
|
|
sudo apt-get install curl
|
|
|
|
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
|
|
```
|
|
Feche e reabra o seu terminal para usar o nvm. Em seguida, execute os seguintes comandos.
|
|
|
|
```bash
|
|
|
|
nvm install # installs recommended node version
|
|
|
|
nvm use # use recommended node version
|
|
|
|
corepack enable
|
|
```
|
|
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
---
|
|
|
|
## Passo 1: Clonar com Git
|
|
|
|
No seu terminal, execute o seguinte comando.
|
|
|
|
<Tabs>
|
|
<Tab title="SSH (Recomendado)">
|
|
Se ainda não configurou as chaves SSH, você pode aprender como fazê-lo [aqui](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/about-ssh).
|
|
```bash
|
|
git clone git@github.com:twentyhq/twenty.git
|
|
```
|
|
</Tab>
|
|
<Tab title="HTTPS">
|
|
|
|
```bash
|
|
git clone https://github.com/twentyhq/twenty.git
|
|
```
|
|
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
## Passo 2: Posicione-se na raiz
|
|
|
|
```bash
|
|
cd twenty
|
|
```
|
|
|
|
Você deve executar todos os comandos nas etapas seguintes a partir da raiz do projeto.
|
|
|
|
## Passo 3: Configurar um Banco de Dados PostgreSQL
|
|
|
|
<Tabs>
|
|
<Tab title="Linux">
|
|
**Opção 1 (preferencial):** Para provisionar seu banco de dados localmente:
|
|
Use o seguinte link para instalar o PostgreSQL na sua máquina Linux: [Instalação do PostgreSQL](https://www.postgresql.org/download/linux/)
|
|
```bash
|
|
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
|
|
```
|
|
Nota: Pode ser necessário adicionar `sudo -u postgres` ao comando antes de `psql` para evitar erros de permissão.
|
|
|
|
**Opção 2:** Se você tem o docker instalado:
|
|
```bash
|
|
make -C packages/twenty-docker postgres-on-docker
|
|
```
|
|
</Tab>
|
|
<Tab title="Mac OS">
|
|
**Opção 1 (preferencial):** Para prover seu banco de dados localmente com `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;"
|
|
```
|
|
|
|
Você pode verificar se o servidor PostgreSQL está em execução, executando:
|
|
```bash
|
|
brew services list
|
|
```
|
|
|
|
O instalador pode não criar o usuário `postgres` por padrão ao instalar
|
|
via Homebrew no macOS. Em vez disso, ele cria uma função PostgreSQL que corresponde ao seu nome de usuário do macOS
|
|
(por exemplo, "john").
|
|
Para verificar e criar o usuário `postgres`, se necessário, siga estas etapas:
|
|
```bash
|
|
# Connect to PostgreSQL
|
|
psql postgres
|
|
or
|
|
psql -U $(whoami) -d postgres
|
|
```
|
|
|
|
Uma vez no prompt do psql (postgres=#), execute:
|
|
```bash
|
|
# List existing PostgreSQL roles
|
|
\du
|
|
```
|
|
Você verá uma saída semelhante a:
|
|
```bash
|
|
Role name | Attributes | Member of
|
|
-----------+-------------+-----------
|
|
john | Superuser | {}
|
|
```
|
|
|
|
Se você não vir um papel `postgres` listado, prossiga para a próxima etapa.
|
|
Crie o papel `postgres` manualmente:
|
|
```bash
|
|
CREATE ROLE postgres WITH SUPERUSER LOGIN;
|
|
```
|
|
Isso cria um papel de superusuário chamado `postgres` com acesso de login.
|
|
```bash
|
|
Nome do papel | Atributos | Membro de
|
|
-----------+-------------+-----------
|
|
postgres | Superusuário | {}
|
|
john | Superusuário | {}
|
|
```
|
|
|
|
**Opção 2:** Se você tem o docker instalado:
|
|
```bash
|
|
make -C packages/twenty-docker postgres-on-docker
|
|
```
|
|
</Tab>
|
|
<Tab title="Windows (WSL)">
|
|
Todos os passos a seguir devem ser executados no terminal WSL (dentro da sua máquina virtual)
|
|
|
|
**Opção 1:** Para provisionar seu PostgreSQL localmente:
|
|
Use o seguinte link para instalar o PostgreSQL na sua máquina virtual Linux: [Instalação do PostgreSQL](https://www.postgresql.org/download/linux/)
|
|
```bash
|
|
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
|
|
```
|
|
Nota: Pode ser necessário adicionar `sudo -u postgres` ao comando antes de `psql` para evitar erros de permissão.
|
|
|
|
**Opção 2:** Se você tem o docker instalado:
|
|
Executar o Docker no WSL adiciona uma camada extra de complexidade.
|
|
Use esta opção apenas se estiver confortável com as etapas adicionais envolvidas, incluindo a ativação do [Docker Desktop WSL2](https://docs.docker.com/desktop/wsl).
|
|
```bash
|
|
make -C packages/twenty-docker postgres-on-docker
|
|
```
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
Agora você pode acessar o banco de dados em `localhost:5432`.
|
|
|
|
Se você usou a opção do Docker acima, as credenciais padrão são usuário `postgres` e senha `postgres`. Para instalações nativas do PostgreSQL, use as credenciais e os papéis configurados na sua máquina.
|
|
|
|
## Passo 4: Configurar um Banco de Dados Redis (cache)
|
|
|
|
O Twenty requer um cache Redis para oferecer o melhor desempenho.
|
|
|
|
<Tabs>
|
|
<Tab title="Linux">
|
|
**Opção 1:** Para prover seu Redis localmente:
|
|
Use o seguinte link para instalar o Redis na sua máquina Linux: [Instalação do Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
|
|
|
|
**Opção 2:** Se você tem o docker instalado:
|
|
```bash
|
|
make -C packages/twenty-docker redis-on-docker
|
|
```
|
|
</Tab>
|
|
<Tab title="Mac OS">
|
|
**Opção 1 (preferencial):** Para prover seu Redis localmente com `brew`:
|
|
```bash
|
|
brew install redis
|
|
```
|
|
Inicie o servidor Redis:
|
|
```bash
|
|
brew services start redis
|
|
```
|
|
|
|
**Opção 2:** Se você tem o docker instalado:
|
|
```bash
|
|
make -C packages/twenty-docker redis-on-docker
|
|
```
|
|
</Tab>
|
|
<Tab title="Windows (WSL)">
|
|
**Opção 1:** Para prover seu Redis localmente:
|
|
Use o seguinte link para instalar o Redis na sua máquina virtual Linux: [Instalação do Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
|
|
|
|
**Opção 2:** Se você tem o docker instalado:
|
|
```bash
|
|
make -C packages/twenty-docker redis-on-docker
|
|
```
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
Se você precisar de uma GUI de cliente, recomendamos o [Redis Insight](https://redis.io/insight/) (versão gratuita disponível).
|
|
|
|
## Passo 5: Configurar variáveis de ambiente
|
|
|
|
Use variáveis de ambiente ou arquivos `.env` para configurar seu projeto. Mais informações [aqui](/l/pt/developers/self-host/capabilities/setup).
|
|
|
|
Copie os arquivos `.env.example` em `/front` e `/server`:
|
|
|
|
```bash
|
|
cp ./packages/twenty-front/.env.example ./packages/twenty-front/.env
|
|
cp ./packages/twenty-server/.env.example ./packages/twenty-server/.env
|
|
```
|
|
|
|
<Info>
|
|
**Modo Multiworkspace:** Por padrão, o Twenty é executado no modo de workspace único, em que apenas um workspace pode ser criado. Para ativar o suporte a multiworkspace (útil para testar recursos baseados em subdomínio), defina `IS_MULTIWORKSPACE_ENABLED=true` no arquivo `.env` do seu servidor. Veja [Modo Multiworkspace](/l/pt/developers/self-host/capabilities/setup#multi-workspace-mode) para obter detalhes.
|
|
</Info>
|
|
|
|
## Passo 6: Instalando dependências
|
|
|
|
Para compilar o servidor Twenty e popular seu banco de dados com alguns dados, execute o seguinte comando:
|
|
|
|
```bash
|
|
yarn
|
|
```
|
|
|
|
Note que `npm` ou `pnpm` não funcionarão
|
|
|
|
## Passo 7: Executando o projeto
|
|
|
|
<Tabs>
|
|
<Tab title="Linux">
|
|
Dependendo da sua distribuição Linux, o servidor Redis pode ser iniciado automaticamente.
|
|
Se não, verifique o [guia de instalação do Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/) para sua distro.
|
|
</Tab>
|
|
<Tab title="Mac OS">
|
|
Redis já deve estar em execução. Se não, execute:
|
|
```bash
|
|
brew services start redis
|
|
```
|
|
</Tab>
|
|
<Tab title="Windows (WSL)">
|
|
Dependendo da sua distribuição Linux, o servidor Redis pode ser iniciado automaticamente.
|
|
Se não, verifique o [guia de instalação do Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/) para sua distro.
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
Configure seu banco de dados com o seguinte comando:
|
|
|
|
```bash
|
|
npx nx database:reset twenty-server
|
|
```
|
|
|
|
Inicie o servidor, o worker e os serviços de frontend:
|
|
|
|
```bash
|
|
npx nx start twenty-server
|
|
npx nx worker twenty-server
|
|
npx nx start twenty-front
|
|
```
|
|
|
|
Alternativamente, você pode iniciar todos os serviços de uma vez:
|
|
|
|
```bash
|
|
npx nx start
|
|
```
|
|
|
|
## Passo 8: Use Twenty
|
|
|
|
**Frontend**
|
|
|
|
O frontend do Twenty estará em execução em [http://localhost:3001](http://localhost:3001).
|
|
Você pode fazer login usando a conta demo padrão: `tim@apple.dev` (senha: `tim@apple.dev`)
|
|
|
|
**Backend**
|
|
|
|
* O servidor do Twenty estará ativo em [http://localhost:3000](http://localhost:3000)
|
|
* A API GraphQL pode ser acessada em [http://localhost:3000/graphql](http://localhost:3000/graphql)
|
|
* A API REST pode ser acessada em [http://localhost:3000/rest](http://localhost:3000/rest)
|
|
|
|
## Resolução de Problemas
|
|
|
|
Se encontrar algum problema, verifique [Resolução de Problemas](/l/pt/developers/self-host/capabilities/troubleshooting) para soluções.
|