Skip to content

Update Langflow docker-compose.yml#753

Open
omarherri wants to merge 1 commit intoDokploy:canaryfrom
omarherri:patch-1
Open

Update Langflow docker-compose.yml#753
omarherri wants to merge 1 commit intoDokploy:canaryfrom
omarherri:patch-1

Conversation

@omarherri
Copy link
Copy Markdown

@omarherri omarherri commented Mar 26, 2026

What is this PR about?

New PR of langflow

Checklist

Before submitting this PR, please make sure that:

Issues related (if applicable)

Close automatically the related issues using the keywords: closes #ISSUE_NUMBER

Screenshots or Videos

Greptile Summary

This PR updates the Langflow blueprint's docker-compose.yml with several improvements — adding healthchecks for Postgres, better environment variable configuration, and cleaner volume naming — but introduces a number of violations of the repository's AGENTS.md conventions that must be fixed before merging.

Key issues found:

  • P0 – Hardcoded secret key: LANGFLOW_SECRET_KEY is set to a static value committed in a public repo. Every deployment shares the same cryptographic secret; it must be replaced with the ${base64:32} Dokploy helper.
  • P1 – Hardcoded superuser password: LANGFLOW_SUPERUSER_PASSWORD uses a plain-text default that will be used as-is unless users manually intervene. Should use the ${password:16} helper via the template variable system.
  • P1 – Missing version: "3.8": AGENTS.md mandates this declaration; it was removed entirely.
  • P1 – ports instead of expose: AGENTS.md explicitly forbids ports in compose files; expose must be used instead.
  • P1 – Unpinned latest image: Pinning to a specific version is required to ensure reproducible and supply-chain-safe deployments.
  • P2 – pull_policy: always: Combined with latest, this causes silent uncontrolled upgrades on every container restart.

Confidence Score: 1/5

Not safe to merge — contains a publicly exposed cryptographic secret and multiple AGENTS.md convention violations.

The hardcoded LANGFLOW_SECRET_KEY committed to a public repository is a P0 security issue that alone blocks merging. On top of that, there are four P1 violations of mandatory AGENTS.md conventions (missing version, ports vs expose, unpinned image, hardcoded password). All of these need to be resolved before the template is suitable for public use.

blueprints/langflow/docker-compose.yml requires significant rework; blueprints/langflow/template.toml also needs updating to expose the new credentials as auto-generated variables.

Important Files Changed

Filename Overview
blueprints/langflow/docker-compose.yml Updated Langflow compose with healthchecks and richer env config, but introduces a publicly committed secret key, hardcoded credentials, removed mandatory version declaration, uses ports instead of expose, and pins to the latest tag — all violating AGENTS.md conventions.

Reviews (1): Last reviewed commit: "Update docker-compose.yml" | Re-trigger Greptile

Greptile also left 6 inline comments on this PR.

(2/5) Greptile learns from your feedback when you react with thumbs up/down!

Context used:

  • Context used - AGENTS.md (source)

@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Mar 26, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 26, 2026

built with Refined Cloudflare Pages Action

⚡ Cloudflare Pages Deployment

Name Status Preview Last Commit
templates ✅ Ready (View Log) Visit Preview bf8c13b

@@ -1,31 +1,44 @@
version: "3.8"

services:
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Missing version: "3.8" declaration

AGENTS.md mandates that all Docker Compose files in this repository MUST start with version: "3.8". The PR removed this line entirely.

Suggested change
services:
version: "3.8"
services:

Context Used: AGENTS.md (source)

services:
langflow:
image: langflowai/langflow:v1.1.1
image: langflowai/langflow:latest
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Unpinned image version

The image was changed from a pinned version (v1.1.1) to latest. This violates the AGENTS.md security guideline which states Docker images must be pinned to specific versions to avoid supply chain attacks. Using latest also means deployments are non-reproducible and can break unexpectedly when upstream publishes a breaking change.

Please pin to a specific release (use the actual latest stable release version):

Suggested change
image: langflowai/langflow:latest
image: langflowai/langflow:v1.4.0

Context Used: AGENTS.md (source)

image: langflowai/langflow:latest
user: root
restart: always
pull_policy: always
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 pull_policy: always causes unnecessary overhead

pull_policy: always forces Docker to check for a newer image on every container start. Combined with the latest tag, this means each restart may silently upgrade to an untested version. This policy is inappropriate for a stable template; it should be removed (the default behavior is sufficient).

Comment on lines 7 to 8
ports:
- 7860
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 ports must be replaced with expose

AGENTS.md explicitly states: "NEVER include: ports (use expose only)". Dokploy handles network isolation and routing externally — publishing ports directly from a compose file is not the expected pattern for this template repository.

Suggested change
ports:
- 7860
expose:
- 7860

Context Used: AGENTS.md (source)

Comment on lines +15 to +16
- LANGFLOW_SUPERUSER_PASSWORD=changepassword
- LANGFLOW_SECRET_KEY=PP_G4Gwm1lOkyG8r8N0LrdlpWXZ7Tyq5CVyfBquuj6g=
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Hardcoded credentials — use Dokploy variable helpers

LANGFLOW_SUPERUSER_PASSWORD is set to the literal string changepassword. This is a hardcoded default password that end users may forget to change, creating a security risk on every deployment.

AGENTS.md states: "NEVER hardcode secrets in templates — use Dokploy's variable system with helpers."

These values should be exposed as template variables in template.toml and reference Dokploy helpers (e.g. ${password:16} and ${email}).

Context Used: AGENTS.md (source)

- LANGFLOW_CONFIG_DIR=/app/config
- LANGFLOW_SUPERUSER=email@domain.com
- LANGFLOW_SUPERUSER_PASSWORD=changepassword
- LANGFLOW_SECRET_KEY=PP_G4Gwm1lOkyG8r8N0LrdlpWXZ7Tyq5CVyfBquuj6g=
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P0 Hardcoded secret key in public repository

LANGFLOW_SECRET_KEY is set to a static, hardcoded value that is now publicly visible in this repository. Every deployment using this template will share the same cryptographic secret, making tokens trivially forgeable by anyone who reads this file.

AGENTS.md states: "NEVER hardcode secrets in templates — use Dokploy's variable system with helpers." Use the ${base64:32} helper in template.toml and reference it as a template variable in the compose file, the same way DB_PASSWORD is handled.

Context Used: AGENTS.md (source)

@dosubot
Copy link
Copy Markdown

dosubot bot commented Mar 26, 2026

Related Documentation

1 document(s) may need updating based on files changed in this PR:

Dokploy's Space

copilot-instructions /templates/blob/canary/.github/copilot-instructions.md — ⏳ Awaiting Merge

Note: You must be authenticated to accept/decline updates.

How did I do? Any feedback?  Join Discord

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M This PR changes 30-99 lines, ignoring generated files. template New template request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant