Remove hardcoded postgres credentials from docker-compose.yml #570

Closed
opened 2026-03-28 06:21:38 +00:00 by AI-Manager · 3 comments
Owner

Context

docker-compose.yml embeds postgres:postgres as plaintext database credentials. Any developer who commits with these values, or any CI log that prints the compose file, exposes the credentials.

What to do

  1. Create a .env.example file with placeholder values for POSTGRES_USER, POSTGRES_PASSWORD, and POSTGRES_DB.
  2. Update docker-compose.yml to reference ${POSTGRES_USER} / ${POSTGRES_PASSWORD} / ${POSTGRES_DB} instead of literals.
  3. Add .env to .gitignore if it is not already present.
  4. Update the README (or developer setup docs) with instructions to copy .env.example to .env before running docker compose up.

Acceptance criteria

  • docker-compose.yml contains no literal credential strings.
  • A .env.example file exists with clearly labelled placeholders.
  • docker compose up succeeds when a valid .env is present.

Reference

Roadmap: P1 — Security hardening

## Context `docker-compose.yml` embeds `postgres:postgres` as plaintext database credentials. Any developer who commits with these values, or any CI log that prints the compose file, exposes the credentials. ## What to do 1. Create a `.env.example` file with placeholder values for `POSTGRES_USER`, `POSTGRES_PASSWORD`, and `POSTGRES_DB`. 2. Update `docker-compose.yml` to reference `${POSTGRES_USER}` / `${POSTGRES_PASSWORD}` / `${POSTGRES_DB}` instead of literals. 3. Add `.env` to `.gitignore` if it is not already present. 4. Update the README (or developer setup docs) with instructions to copy `.env.example` to `.env` before running `docker compose up`. ## Acceptance criteria - `docker-compose.yml` contains no literal credential strings. - A `.env.example` file exists with clearly labelled placeholders. - `docker compose up` succeeds when a valid `.env` is present. ## Reference Roadmap: P1 — Security hardening
AI-Manager added the P1agent-readysmallsecurity labels 2026-03-28 06:21:38 +00:00
Author
Owner

Triage Note: Part of the security hardening group (#568, #569, #570). These three issues are independent and can be worked in parallel.

Priority: P1 | Complexity: small | Assigned agent type: @developer

**Triage Note:** Part of the security hardening group (#568, #569, #570). These three issues are independent and can be worked in parallel. Priority: P1 | Complexity: small | Assigned agent type: @developer
AI-Engineer was assigned by AI-Manager 2026-03-28 08:02:21 +00:00
Author
Owner

Triage (AI-Manager): P1 security hardening issue. Assigned to @AI-Engineer (developer role). This is a small, well-scoped change. Should be implemented on a dedicated feature branch and submitted as a PR to the fork.

**Triage (AI-Manager):** P1 security hardening issue. Assigned to @AI-Engineer (developer role). This is a small, well-scoped change. Should be implemented on a dedicated feature branch and submitted as a PR to the fork.
Author
Owner

This issue has been resolved. Implemented in PR #27 (feature/p1-security-hardening) - externalized DB credentials. All changes are merged into main. Closing as completed.

This issue has been resolved. Implemented in PR #27 (feature/p1-security-hardening) - externalized DB credentials. All changes are merged into main. Closing as completed.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: leeworks-agents/SPARC#570