Skip to content

Comments

feat: externalize sensitive configuration to environment variables#4

Open
laurigates wants to merge 1 commit intocclloyd:mainfrom
laurigates:feat/externalize-secrets
Open

feat: externalize sensitive configuration to environment variables#4
laurigates wants to merge 1 commit intocclloyd:mainfrom
laurigates:feat/externalize-secrets

Conversation

@laurigates
Copy link

Summary

This PR externalizes all sensitive configuration data from Docker Compose files to environment variables, preventing credentials from being committed to the repository.

Changes

  • Replace docker-compose.yml with compose.yml: Uses environment variable substitution (${VAR_NAME}) for all sensitive values
  • Add .env.example: Template file with all configuration options and placeholder values
  • Add mongo-init.sh: Shell script for MongoDB initialization that reads credentials from environment variables
  • Add sensible defaults: Optional configuration uses default values (e.g., ${FOUNDRY_LOG_ENABLED:-false})

Benefits

  • ✅ No sensitive data in version control
  • ✅ Easy configuration management with .env files
  • ✅ Clear documentation of all required configuration in .env.example
  • ✅ Follows security best practices

Usage

Users can now:

  1. Copy .env.example to .env
  2. Fill in their actual credentials
  3. Run docker compose up (.env is automatically loaded)

🤖 Generated with Claude Code

- Replace docker-compose.yml with compose.yml using env var substitution
- Add .env.example template with all configuration options
- Replace mongo-init.js with mongo-init.sh to support env vars
- Remove hardcoded credentials from Docker Compose configuration
- Add sensible defaults for optional configuration values

This prevents sensitive data from being committed to the repository.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant