---
title: Локална поставка
description: "Водич за сараднике (или радознали програмери) који желе да покрену Twenty локално."
image: /images/user-guide/fields/field.png
---
## Предуслови
Пре него што инсталирате и користите 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
```
Сада би требало да видите поруку да поново покренете рачунар. Ако не, поново покрените га ручно.
Након поновног покретања, отвориће се прозор терминала и инсталираће Ubuntu. This may take up some time.
Видећете да се појављује прозор за креирање корисничког имена и лозинке за вашу 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`. The `.nvmrc` ensures all contributors use the same version.
```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: Позиционирајте се на root
```bash
cd twenty
```
Све команде у наредним корацима треба покренути из корена пројекта.
## Корак 3: Поставите PostgreSQL базу података
**Option 1 (preferred):** To provision your database locally:
Use the following link to install Postgresql on your Linux machine: [Postgresql Installation](https://www.postgresql.org/download/linux/)
```bash
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
Note: You might need to add `sudo -u postgres` to the command before `psql` to avoid permission errors.
````
**Option 2:** If you have docker installed:
```bash
make postgres-on-docker
```
````
**Option 1 (preferred):** To provision your database locally with `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;"
```
You can verify if the PostgreSQL server is running by executing:
```bash
brew services list
```
The installer might not create the `postgres` user by default when installing
via Homebrew on MacOS. Instead, it creates a PostgreSQL role that matches your macOS
username (e.g., "john").
To check and create the `postgres` user if necessary, follow these steps:
```bash
# Connect to PostgreSQL
psql postgres
or
psql -U $(whoami) -d postgres
```
Once at the psql prompt (postgres=#), run:
```bash
# List existing PostgreSQL roles
\du
```
You'll see output similar to:
```bash
Role name | Attributes | Member of
-----------+-------------+-----------
john | Superuser | {}
```
If you do not see a `postgres` role listed, proceed to the next step.
Create the `postgres` role manually:
```bash
CREATE ROLE postgres WITH SUPERUSER LOGIN;
```
This creates a superuser role named `postgres` with login access.
**Option 2:** If you have docker installed:
```bash
make postgres-on-docker
```
````
All the following steps are to be run in the WSL terminal (within your virtual machine)
````
**Option 1:** To provision your Postgresql locally:
Use the following link to install Postgresql on your Linux virtual machine: [Postgresql Installation](https://www.postgresql.org/download/linux/)
```bash
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
Note: You might need to add `sudo -u postgres` to the command before `psql` to avoid permission errors.
**Option 2:** If you have docker installed:
Running Docker on WSL adds an extra layer of complexity.
Only use this option if you are comfortable with the extra steps involved, including turning on [Docker Desktop WSL2](https://docs.docker.com/desktop/wsl).
```bash
make postgres-on-docker
```
````
Сада можете приступити бази података на [localhost:5432](localhost:5432), са корисником `postgres` и лозинком `postgres` .
## Step 4: Set up a Redis Database (cache)
Twenty requires a redis cache to provide the best performance
**Option 1:** To provision your Redis locally:
Use the following link to install Redis on your Linux machine: [Redis Installation](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
````
**Option 2:** If you have docker installed:
```bash
make redis-on-docker
```
````
**Option 1 (preferred):** To provision your Redis locally with `brew`:
```bash
brew install redis
```
Start your redis server:
```brew services start redis```
````
**Option 2:** If you have docker installed:
```bash
make redis-on-docker
```
````
**Option 1:** To provision your Redis locally:
Use the following link to install Redis on your Linux virtual machine: [Redis Installation](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
````
**Option 2:** If you have docker installed:
```bash
make redis-on-docker
```
````
Ако вам је потребан GUI клијент, препоручујемо [redis insight](https://redis.io/insight/) (доступна бесплатна верзија)
## Корак 5: Поставите променљиве окружења
Користите променљиве окружења или `.env` датотеке за конфигурацију вашег пројекта. Више информација [овде](https://docs.twenty.com/l/sr/developers/self-hosting/setup)
Копирајте `.env.example` датотеке у `/front` и `/server`:
```bash
cp ./packages/twenty-front/.env.example ./packages/twenty-front/.env
cp ./packages/twenty-server/.env.example ./packages/twenty-server/.env
```
## Корак 6: Инсталирање зависности
Да бисте изградили Twenty сервер и убацили одређене податке у вашу базу података, покрените следећу команду:
```bash
yarn
```
Имајте на уму да `npm` или `pnpm` неће радити
## Корак 7: Покретање пројекта
У зависности од ваше Линукс дистрибуције, Redis сервер може бити аутоматски покренут.
Ако није, проверите [Водич за инсталацију Redis-а](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/) за вашу дистрибуцију.
Redis би већ требало да ради. If not, run:
```bash
brew services start redis
```
У зависности од ваше Линукс дистрибуције, 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)
- GraphQL API можете приступити на [http://localhost:3000/graphql](http://localhost:3000/graphql)
- REST API је доступан на [http://localhost:3000/rest](http://localhost:3000/rest)
## Решавање проблема
Ако наиђете на било какав проблем, проверите [Решавање проблема](https://docs.twenty.com/l/sr/developers/self-hosting/troubleshooting) за решења.