# Clone the repositorygit clone https://github.com/getprofile/getprofile.gitcd getprofile# Configure environmentcp .env.docker.example .env# Edit .env with your API keys# Start all services (source .env to handle long API keys correctly)source .env && export LLM_API_KEY && docker compose -f docker/docker-compose.yml up -d
Create a .env file in the repository root using .env.docker.example as a template:
# RequiredLLM_API_KEY=sk-your-key-here# Optional - Server AuthenticationGETPROFILE_API_KEY=your-secret-key-here # If not set, allows all requests# Optional - Upstream LLM ConfigurationUPSTREAM_API_KEY=sk-different-key # Defaults to LLM_API_KEYUPSTREAM_BASE_URL=https://api.openai.com/v1# Optional - Message Retention and SummaryGETPROFILE_MAX_MESSAGES=1000 # Max messages per profileGETPROFILE_SUMMARY_INTERVAL=60 # Summary refresh interval (minutes)# Optional - Rate LimitingGETPROFILE_RATE_LIMIT=60 # Requests per minute (0 to disable)# Optional - Server ConfigurationPORT=3100HOST=0.0.0.0
If you experience issues with environment variables (especially long API keys) appearing truncated in containers:Problem: Docker Compose may not correctly parse long API keys from the .env file directly, causing errors like “UPSTREAM_API_KEY or LLM_API_KEY environment variable is required”.Solution: Source the .env file and export variables before running docker compose: