---
title: 1-klikk med 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/no/developers/local-setup).
</Warning>

## Oversikt

Denne guiden gir trinnvise instruksjoner for å installere og konfigurere Twenty-applikasjonen ved hjelp av Docker Compose. Målet er å gjøre prosessen enkel og unngå vanlige fallgruver som kan ødelegge oppsettet ditt.

**Viktig:** Modifiser kun innstillinger som er eksplisitt nevnt i denne guiden. Å endre andre konfigurasjoner kan føre til problemer.

Se dokumentasjon [Sett Opp Miljøvariabler](https://docs.twenty.com/l/no/developers/self-hosting/setup) for avansert konfigurasjon. Alle miljøvariabler må deklareres i docker-compose.yml-filen på server- og/eller arbeidernivå, avhengig av variabelen.

## Systemkrav

- RAM: Sørg for at miljøet ditt har minst 2 GB RAM. Utilstrekkelig minne kan føre til at prosesser krasjer.
- Docker & Docker Compose: Sørg for at begge er installert og oppdatert til nyeste versjon.

## Alternativ 1: En-linje skript

Installer den nyeste stabile versjonen av Twenty med en enkelt kommando:

```bash
bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
```

For å installere en spesifikk versjon eller gren:

```bash
VERSION=vx.y.z BRANCH=branch-name bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
```

- Erstatt x.y.z med ønsket versjonsnummer.
- Erstatt branch-name med navnet på grenen du vil installere.

## Alternativ 2: Manuelle trinn

Følg disse trinnene for et manuelt oppsett.

### Trinn 1: Sett opp miljøfilen

1. **Opprett .env-filen**

   Kopier eksempelmiljøfilen til en ny .env-fil i arbeidsmappen din:

   ```bash
   curl -o .env https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/.env.example
   ```

2. **Generer hemmelige tokens**

   Kjør følgende kommando for å generere en unik tilfeldig streng:

   ```bash
   openssl rand -base64 32
   ```

   **Viktig:** Hold denne verdien hemmelig / ikke del den.

3. **Oppdater `.env`**

   Erstatt plassholderverdien i .env-filen din med den genererte tokenen:

   ```ini
   APP_SECRET=first_random_string
   ```

4. **Sett Postgres-passordet**

   Oppdater `PG_DATABASE_PASSWORD`-verdien i .env-filen med et sterkt passord uten spesialtegn.

   ```ini
   PG_DATABASE_PASSWORD=my_strong_password
   ```

### Trinn 2: Skaff Docker Compose-filen

Last ned `docker-compose.yml`-filen til arbeidsmappen din:

```bash
curl -o docker-compose.yml https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/docker-compose.yml
```

### Trinn 3: Start applikasjonen

Start Docker-containere:

```bash
docker compose up -d
```

### Trinn 4: Få tilgang til applikasjonen

Hvis du hoster twentyCRM på din egen datamaskin, åpne nettleseren din og naviger til [http://localhost:3000](http://localhost:3000).

Hvis du hoster på en server, sjekk at serveren kjører og at alt er ok med

```bash
curl http://localhost:3000
```

## Konfigurasjon

### Eksponer Twenty til ekstern tilgang

Som standard kjører Twenty på `localhost` ved port `3000`. For å få tilgang via et eksternt domene eller IP-adresse, må du konfigurere `SERVER_URL` i `.env`-filen din.

#### Forstå `SERVER_URL`

- **Protokoll:** Bruk `http` eller `https` avhengig av oppsettet ditt.
  - Bruk `http` hvis du ikke har satt opp SSL.
  - Bruk `https` hvis du har konfigurert SSL.
- **Domene/IP:** Dette er domenenavnet eller IP-adressen der applikasjonen din er tilgjengelig.
- **Port:** Inkluder portnummeret hvis du ikke bruker standardportene (`80` for `http`, `443` for `https`).

### SSL-krav

SSL (HTTPS) kreves for at visse nettleserfunksjoner skal fungere riktig. Mens disse funksjonene kan fungere under lokal utvikling (siden nettlesere behandler localhost annerledes), er et ordentlig SSL-oppsett nødvendig når Twenty hostes på et vanlig domene.

For eksempel kan utklippsbord-API kreve en sikker kontekst - noen funksjoner som kopiknapper i hele applikasjonen kan ikke fungere uten HTTPS aktivert.

Vi anbefaler sterkt å sette opp Twenty bak en omvendt proxy med SSL-terminering for optimal sikkerhet og funksjonalitet.

#### Konfigurere `SERVER_URL`

1. **Bestem tilgangs-URL**
   - **Uten omvendt proxy (direkte tilgang):**

     Hvis du har direkte tilgang til applikasjonen uten omvendt proxy:

     ```ini
     SERVER_URL=http://your-domain-or-ip:3000
     ```

   - **Med omvendt proxy (standardporter):**

     Hvis du bruker en omvendt proxy som Nginx eller Traefik og har SSL konfigurert:

     ```ini
     SERVER_URL=https://your-domain-or-ip
     ```

   - **Med omvendt proxy (tilpassede porter):**

     Hvis du bruker ikke-standard porter:

     ```ini
     SERVER_URL=https://your-domain-or-ip:custom-port
     ```

2. **Oppdater .env-filen**

   Åpne `.env`-filen din og oppdater `SERVER_URL`:

   ```ini
   SERVER_URL=http(s)://your-domain-or-ip:your-port
   ```

   **Eksempler:**

   - Direkte tilgang uten SSL:
     ```ini
     SERVER_URL=http://123.45.67.89:3000
     ```
   - Tilgang via domene med SSL:
     ```ini
     SERVER_URL=https://mytwentyapp.com
     ```

3. **Start applikasjonen på nytt**

   For at endringene skal tre i kraft, start Docker-containere på nytt:

   ```bash
   docker compose down
   docker compose up -d
   ```

#### Betraktninger

- **Omvendt proxy-konfigurasjon:**

  Sørg for at din omvendte proxy videresender forespørsler til den riktige interne porten (`3000` som standard). Konfigurer SSL-terminering og eventuelle nødvendige overskrifter.

- **Brannmurinnstillinger:**

  Åpne nødvendige porter i brannmuren for å tillate ekstern tilgang.

- **Konsistens:**

  `SERVER_URL` må samsvare med hvordan brukerne åpner applikasjonen i nettleserne sine.

#### Persistence

- **Datavolumer:**

  Docker Compose-konfigurasjonen bruker volumer til å vedvare data for databasen og serverlagringen.

- **Stateless-miljøer:**

  Hvis du distribuerer til et stateless-miljø (f.eks. visse skytjenester), konfigurer ekstern lagring for å vedvare data.

## Feilsøking

Hvis du støter på problemer, sjekk [Feilsøking](https://docs.twenty.com/l/no/developers/self-hosting/troubleshooting) for løsninger.

