Ugrás a fő tartalomhoz

Beállítási referencia

Ezen az oldalon minden nem kötelező olvasmány – a Beállítás lefedi a normál útvonalat.

Gazda által kezelt beállítás

Futtasson mindent közvetlenül a gazdagépen a devcontainer helyett. Szüksége van a Gitre, a Node.js 24-re, a Python 3.13-ra és a Dockerre (Postgres, Redis és MinIO esetén).

  1. Futtassa a közreműködő rendszerindítót. Beállítja a origin-t villaként, a upstream-t pedig IntraCord-hq/IntraCord-ként, inicializálja a pipecat almodult, létrehozza a Python venv-t, és másolja a .env sablonokat:
bash scripts/setup_fork.sh
.\scripts\setup_fork.ps1
  1. Aktiválja a virtuális környezetet:
source venv/bin/activate
.\venv\Scripts\Activate.ps1
  1. Python telepítési követelményei:
bash scripts/setup_requirements.sh --dev
.\scripts\setup_requirements.ps1 -Dev
  1. Telepítse a felhasználói felület függőségeit (győződjön meg arról, hogy a node --version 24-et jelent, például a nvm use 24-n keresztül):
cd ui && npm install && cd ..
  1. Indítsa el a Postgres, Redis és MinIO alkalmazást:
docker compose -f docker-compose-local.yaml up -d
  1. Indítsa el a háttérprogramot:
bash scripts/start_services_dev.sh
.\scripts\start_services_dev.ps1
  1. Indítsa el a felhasználói felületet, majd nyissa meg a http://localhost:3000 fájlt:
cd ui && npm run dev

Devcontainer belső részei

A bejelentkezett .devcontainer/ a Dev Containers specifikációját követi, így Cursorban, JetBrains IDE-ben és más kompatibilis szerkesztőkben is működnie kell. Csak a VS Code elérési útját tesztelik aktívan – ha valami máshol elromlik, nyissa meg a GitHub-problémát.

Mit csinál a bootstrap

Amíg a tároló elindul, a devcontainer:

  • Inicializálja a pipecat git almodult a gazdagépen a initializeCommand segítségével
  • Hozd elő a postgres, redis és minio postgres és minio ZXZ-t a Docker Compose segítségével, és várja meg, amíg egészségesek lesznek
  • A venv nevű kötet beültetése a képpel készült Python 3.13 venv-ből
  • Telepítse újra a pipecat-t szerkeszthetőként a kötésbe illesztett almodulból, hogy a forrásszerkesztések érvénybe lépjenek
  • Hozzon létre api/.env, api/.env.test és ui/.env *.example sablonjaikból, ha még nem léteznek
  • Futtassa a npm ci ui/ és api/mcp_server/ts_validator/ rendszert

Az API env fájlokban a localhost for Postgres, Redis és MinIO átírásra kerül a postgres, redis és minio dokkolóhálózati álnevekre. A MINIO_PUBLIC_ENDPOINT szándékosan a localhost-n marad, mert a gazdagép böngészője betöltődik onnan.

Mikor kell újjáépíteni a tartályt

A munkaterület kötési rögzítése és a venv / node_modules nevű kötetek a tároló újraindításakor is megmaradnak, így ritkán kell újraépíteni. Csak akkor építse újra, ha az alábbiak valamelyike megváltozik:

  • .devcontainer/Dockerfile vagy .devcontainer/devcontainer.json
  • api/requirements.txt vagy api/requirements.dev.txt
  • A pipecat/ almodul

Az egyszerű forrású szerkesztések, a ui/package.json és a .env.example sablonok nem igényelnek újraépítést. A git pull után egy gyors ellenőrzés:

git diff HEAD@{1} HEAD -- .devcontainer api/requirements.txt api/requirements.dev.txt pipecat

Ha a diff üres, megtarthatja az aktuális tárolót.

Personal install hook

Bármi, amit a konténerben a named volume-okon kívül telepít — különösen a /home/vscode alatt — az újraépítéskor törlődik. Ide tartoznak az npm i -g csomagok és az olyan Toolok, mint a Claude vagy a Codex CLI.

A személyes tooling automatikus újratelepítéséhez hozzon létre egy végrehajtható .devcontainer/install.local.sh scriptet. A fájl gitignore-olva van, és a post-create bootstrap végén fut. Példa:

#!/usr/bin/env bash
set -euo pipefail

command -v claude >/dev/null 2>&1 || curl -fsSL https://claude.ai/install.sh | bash
command -v codex >/dev/null 2>&1 || npm i -g @openai/codex

A bejegyzéseket a command -v vagy egy markerfájl segítségével tartsa megőrizve, hogy az újrafuttatások olcsók és biztonságosak legyenek.

Dev Container CLI

A devcontainer VS-kód nélküli használatához egyszer telepítse a CLI-t a gazdagépen (Node.js szükséges):

npm install -g @devcontainers/cli

Indítsa el vagy építse újra a tárolót a lerakat gyökérkönyvtárából:

devcontainer up --workspace-folder .

Nyisson meg egy parancsértelmezőt a futó munkaterület-tárolóban:

devcontainer exec --workspace-folder . bash

Futtasson egy egyszeri parancsot a gazdagéptől, pl. a háttérrendszer vagy a felhasználói felület elindítása:

devcontainer exec --workspace-folder . bash scripts/start_services_dev.sh
devcontainer exec --workspace-folder . bash -lc 'cd ui && npm run dev -- --hostname 0.0.0.0'

Fork és upstream távirányítók

A közreműködő bootstrap (scripts/setup_fork.sh) két távirányítót konfigurál:

  • origin: a villája, ahová tolja
  • upstream: IntraCord-hq/IntraCord, ahol az új földterületet köt le

Ha közvetlenül klónozta a IntraCord-hq/IntraCord-t a villa helyett, futtassa le egyszer (a devcontainer belsejében rendben van):

bash scripts/setup_fork.sh

A felfelé irányuló módosítások végrehajtása:

git fetch upstream
git checkout main
git merge upstream/main
git push origin main

A git remote -v segítségével bármikor ellenőrizheti távirányítóit. Látnod kell:

origin https://github.com/<YOUR_HANDLE>/IntraCord.git (fetch/push)
upstream https://github.com/IntraCord-hq/IntraCord.git (fetch/push)