chef icon indicating copy to clipboard operation
chef copied to clipboard

add a docker compose file

Open spyshow opened this issue 2 months ago • 4 comments

please can you make a docker compose file to make deployment eaiser

it would make a lot of difference.

thanks

spyshow avatar Sep 22 '25 09:09 spyshow

Hey, I would like to work on this issue, but before I start I want to make sure that this aligns with the team's roadmap and contributing guidelines.

My thought would be to keep it lightweight and entirely optional, a single docker-compose.yml at the root, plus brief docs on usage. That way it wouldn’t interfere with the existing Vercel/Convex workflow, but would give community contributors a straightforward path to spin things up locally.

If that direction sounds useful, I’d be happy to draft a PR. Please let me know if you’d like me to proceed.

imran-techvoyager avatar Sep 22 '25 18:09 imran-techvoyager

Yes, definitely, if you can add local host convex to the mix, it would be incredible

thanks

spyshow avatar Sep 23 '25 06:09 spyshow

i am using the following docker-compose.yml to host convex backend and dashboard on docker

services:
  backend:
    image: ghcr.io/get-convex/convex-backend:be8a4f397810ce3d04dc3cb32bc81969fe64685a
    ports:
      - "${PORT:-3210}:3210"
      - "${SITE_PROXY_PORT:-3211}:3211"
    volumes:
      - data:/convex/data
    environment:
      - INSTANCE_NAME=${INSTANCE_NAME:-}
      - INSTANCE_SECRET=${INSTANCE_SECRET:-}
      - CONVEX_RELEASE_VERSION_DEV=${CONVEX_RELEASE_VERSION_DEV:-}
      - ACTIONS_USER_TIMEOUT_SECS=${ACTIONS_USER_TIMEOUT_SECS:-}
      - CONVEX_CLOUD_ORIGIN=http://127.0.0.1:${PORT:-3210}
      - CONVEX_SITE_ORIGIN=http://127.0.0.1:${SITE_PROXY_PORT:-3211}
      - DATABASE_URL=${DATABASE_URL:-}
      - DISABLE_BEACON=${DISABLE_BEACON:-}
      - REDACT_LOGS_TO_CLIENT=${REDACT_LOGS_TO_CLIENT:-}
      - DO_NOT_REQUIRE_SSL=${DO_NOT_REQUIRE_SSL:-}
      - POSTGRES_URL=${POSTGRES_URL:-}
      - MYSQL_URL=${MYSQL_URL:-}
      - RUST_LOG=${RUST_LOG:-info}
      - RUST_BACKTRACE=${RUST_BACKTRACE:-}
      - AWS_REGION=${AWS_REGION:-}
      - AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-}
      - AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY:-}
      - AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN:-}
      - S3_STORAGE_EXPORTS_BUCKET=${S3_STORAGE_EXPORTS_BUCKET:-}
      - S3_STORAGE_SNAPSHOT_IMPORTS_BUCKET=${S3_STORAGE_SNAPSHOT_IMPORTS_BUCKET:-}
      - S3_STORAGE_MODULES_BUCKET=${S3_STORAGE_MODULES_BUCKET:-}
      - S3_STORAGE_FILES_BUCKET=${S3_STORAGE_FILES_BUCKET:-}
      - S3_STORAGE_SEARCH_BUCKET=${S3_STORAGE_SEARCH_BUCKET:-}
      - S3_ENDPOINT_URL=${S3_ENDPOINT_URL:-}

    healthcheck:
      test: curl -f http://localhost:3210/version
      interval: 5s
      start_period: 10s

  dashboard:
    image: ghcr.io/get-convex/convex-dashboard:161e32648a971fb8ef591e61212f7b9fb7ff4f2c
    ports:
      - "${DASHBOARD_PORT:-6791}:6791"
    environment:
      - NEXT_PUBLIC_DEPLOYMENT_URL=http://127.0.0.1:${PORT:-3210}
    depends_on:
      backend:
        condition: service_healthy

volumes:
  data:

spyshow avatar Sep 23 '25 06:09 spyshow

please can you make a docker compose file to make deployment eaiser

it would make a lot of difference.

thanks

at the end of 2025, people still don't realize that a user may have more than one such IDE, but they still don't add support for Docker!

I have more than 3 such systems, logging into each one through a list of commands is amateurish!

Developers, just let people use your system, not all programmers are professionals in DevOps, when will you understand this?

gitmeatarru avatar Oct 31 '25 06:10 gitmeatarru