--- title: 1-Click w/ Docker Compose image: /images/user-guide/objects/objects.png --- Header Docker containers are for production hosting or self-hosting, for the contribution please check the [Local Setup](https://docs.twenty.com/l/cs/developers/local-setup). ## Přehled Tato příručka poskytuje podrobný návod k instalaci a konfiguraci aplikace Twenty pomocí Docker Compose. Cílem je zjednodušit proces a zabránit běžným úskalím, která by mohla narušit vaše nastavení. **Důležité:** Měňte pouze nastavení výslovně uvedená v tomto průvodci. Změna jiných konfigurací může vést k problémům. Podívejte se na dokumentaci [Nastavení Proměnných Prostředí](https://docs.twenty.com/l/cs/developers/self-hosting/setup) pro pokročilou konfiguraci. Všechny proměnné prostředí musí být deklarovány v souboru docker-compose.yml na úrovni serveru a/nebo pracovníka v závislosti na proměnné. ## Systémové Požadavky - RAM: Ujistěte se, že vaše prostředí má alespoň 2GB RAM. Nedostatek paměti může způsobit zhroucení procesů. - Docker & Docker Compose: Ujistěte se, že obě jsou nainstalovány a aktuální. ## Možnost 1: Jednořádkový skript Nainstalujte nejnovější stabilní verzi Twenty jedním příkazem: ```bash bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh) ``` Pro instalaci konkrétní verze nebo větve vypište: ```bash VERSION=vx.y.z BRANCH=branch-name bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh) ``` - Nahraďte x.y.z požadovaným číslem verze. - Nahraďte branch-name názvem větve, kterou chcete nainstalovat. ## Možnost 2: Manuální kroky Postupujte podle těchto kroků pro ruční nastavení. ### Krok 1: Nastavení souboru Prostředí 1. **Vytvořte soubor .env** Zkopírujte příklad souboru prostředí do nového souboru .env ve vašem pracovním adresáři: ```bash curl -o .env https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/.env.example ``` 2. **Generate Secret Tokens** Spusťte následující příkaz k generování jedinečného náhodného řetězce: ```bash openssl rand -base64 32 ``` **Důležité:** Udržujte tuto hodnotu v tajnosti / nesdílejte ji. 3. **Aktualizujte `.env` soubor** Nahraďte místoblokovou hodnotu ve svém .env souboru vygenerovaným tokenem: ```ini APP_SECRET=first_random_string ``` 4. **Nastavte Heslo pro Postgres** Aktualizujte hodnotu `PG_DATABASE_PASSWORD` ve vašem .env souboru silným heslem bez speciálních znaků. ```ini PG_DATABASE_PASSWORD=my_strong_password ``` ### Krok 2: Získání souboru Docker Compose Stáhněte soubor `docker-compose.yml` do svého pracovního adresáře: ```bash curl -o docker-compose.yml https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/docker-compose.yml ``` ### Krok 3: Spuštění aplikace Spusťte Docker kontejnery: ```bash docker compose up -d ``` ### Krok 4: Přístup k aplikaci Pokud hostujete twentyCRM na svém vlastním počítači, otevřete svůj prohlížeč a přejděte na stránku [http://localhost:3000](http://localhost:3000). If you host it on a server, check that the server is running and that everything is ok with ```bash curl http://localhost:3000 ``` ## Konfigurace ### Otevření Twenty pro Externí Přístup Ve výchozím nastavení běží Twenty na `localhost` na portu `3000`. Pro přístup přes externí doménu nebo IP adresu musíte nakonfigurovat `SERVER_URL` ve vašem `.env` souboru. #### Porozumění `SERVER_URL` - **Protokol:** Použijte `http` nebo `https` v závislosti na vašem nastavení. - Použijte `http` pokud nemáte nastavené SSL. - Použijte `https` pokud máte SSL nakonfigurované. - **Doména/IP:** Toto je doménové jméno nebo IP adresa, kde je vaše aplikace přístupná. - **Port:** Uveďte číslo portu, pokud nepoužíváte výchozí porty (`80` pro `http`, `443` pro `https`). ### Požadavky na SSL SSL (HTTPS) je potřebné pro správné fungování některých funkcí prohlížeče. I když tyto funkce mohou fungovat během místního vývoje (protože prohlížeče zacházejí s localhost jinak), správná konfigurace SSL je nutná při hostování Twenty na běžné doméně. Například rozhraní schránky může vyžadovat zabezpečený kontext - některé funkce jako tlačítka kopírování v aplikaci nemusí fungovat bez povoleného HTTPS. Důrazně doporučujeme nastavit Twenty za reverzní proxy se SSL ukončením pro optimální bezpečnost a funkčnost. #### Konfigurace `SERVER_URL` 1. **Určete svou přístupovou URL** - **Bez Reverzní Proxy (Přímý Přístup):** Pokud přistupujete k aplikaci přímo bez reverzní proxy: ```ini SERVER_URL=http://your-domain-or-ip:3000 ``` - **S Reverzní Proxy (Standardní Porty):** Pokud používáte reverzní proxy jako Nginx nebo Traefik a máte SSL nakonfigurované: ```ini SERVER_URL=https://your-domain-or-ip ``` - **S Reverzní Proxy (Vlastní Porty):** Pokud používáte nestandardní porty: ```ini SERVER_URL=https://your-domain-or-ip:custom-port ``` 2. **Aktualizujte `.env` Soubor** Otevřete svůj `.env` soubor a aktualizujte `SERVER_URL`: ```ini SERVER_URL=http(s)://your-domain-or-ip:your-port ``` **Příklady:** - Přímý přístup bez SSL: ```ini SERVER_URL=http://123.45.67.89:3000 ``` - Přístup přes doménu s SSL: ```ini SERVER_URL=https://mytwentyapp.com ``` 3. **Restartujte Aplikaci** Pro aplikaci změn restartujte Docker kontejnery: ```bash docker compose down docker compose up -d ``` #### Úvahy - **Konfigurace reverzního proxy:** Ujistěte se, že váš reverzní proxy přesměruje požadavky na správný interní port (výchozí `3000`). Configure SSL termination and any necessary headers. - **Nastavení firewallu:** Otevřete nezbytné porty v firewallu, aby byl umožněn externí přístup. - **Konzistence:** `SERVER_URL` musí odpovídat způsobu, jakým uživatelé přistupují k vaší aplikaci ve svých prohlížečích. #### Perzistence - **Datové svazky:** Konfigurace Docker Compose používá svazky k ukládání dat pro databázi a úložiště serverů. - **Bezstavová prostředí:** Pokud nasazujete do bezstavového prostředí (např. některé cloudové služby), nakonfigurujte externí úložiště pro uchování dat. ## Řešení potíží Pokud narazíte na jakýkoli problém, zkontrolujte sekci [Řešení potíží](https://docs.twenty.com/l/cs/developers/self-hosting/troubleshooting) pro možná řešení.