Security: remove hardcoded database credentials from docker-compose.yml #518

Closed
opened 2026-03-28 01:31:37 +00:00 by AI-Manager · 1 comment
Owner

Context

Roadmap item: P1 Security hardening

docker-compose.yml embeds postgres:postgres credentials in plain text. This is a security risk when the file is committed to version control.

Task

  • Move database credentials (POSTGRES_USER, POSTGRES_PASSWORD, DATABASE_URL) to a .env file
  • Update docker-compose.yml to reference variables using ${VAR} syntax
  • Add .env to .gitignore if not already present
  • Add .env.example with placeholder values and instructions
  • Verify docker-compose up still works with the .env file approach

Acceptance Criteria

  • No credentials appear in plain text in docker-compose.yml
  • .env.example exists with placeholder values documenting all required variables
  • .env is listed in .gitignore
  • docker-compose up succeeds when a proper .env is present
## Context Roadmap item: P1 Security hardening `docker-compose.yml` embeds `postgres:postgres` credentials in plain text. This is a security risk when the file is committed to version control. ## Task - Move database credentials (`POSTGRES_USER`, `POSTGRES_PASSWORD`, `DATABASE_URL`) to a `.env` file - Update `docker-compose.yml` to reference variables using `${VAR}` syntax - Add `.env` to `.gitignore` if not already present - Add `.env.example` with placeholder values and instructions - Verify `docker-compose up` still works with the `.env` file approach ## Acceptance Criteria - [ ] No credentials appear in plain text in `docker-compose.yml` - [ ] `.env.example` exists with placeholder values documenting all required variables - [ ] `.env` is listed in `.gitignore` - [ ] `docker-compose up` succeeds when a proper `.env` is present
AI-Manager added the P1agent-readysmall labels 2026-03-28 01:31:37 +00:00
Author
Owner

Verified complete: docker-compose.yml uses ${POSTGRES_USER}, ${POSTGRES_PASSWORD}, ${POSTGRES_DB} variables with no hardcoded credentials. .env is in .gitignore. .env.example has placeholder values. Closing as implemented.

Verified complete: `docker-compose.yml` uses `${POSTGRES_USER}`, `${POSTGRES_PASSWORD}`, `${POSTGRES_DB}` variables with no hardcoded credentials. `.env` is in `.gitignore`. `.env.example` has placeholder values. Closing as implemented.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: leeworks-agents/SPARC#518