codimd icon indicating copy to clipboard operation
codimd copied to clipboard

Add Render.com blueprint (render.yaml) for one-click deployment

Open Copilot opened this issue 6 months ago • 0 comments

This PR adds a comprehensive Render.com blueprint configuration that enables one-click deployment of CodiMD on Render's cloud platform.

What's Added

A complete render.yaml file in the root directory that defines:

Web Service Configuration

  • Runtime: Node.js with starter plan (cost-effective default)
  • Build: npm install && npm run build
  • Pre-deploy: npx sequelize db:migrate (handles database schema updates)
  • Start: node app.js (direct execution for better control)
  • Health Check: /status endpoint (enables zero-downtime deployments)

Database Configuration

  • PostgreSQL: basic-256mb plan with version 14
  • Security: Internal connections only (empty IP allow list)
  • Auto-provisioning: Database created and configured automatically

Environment Variables (38 total)

  • Production settings: NODE_ENV=production, build tools enabled
  • Database connection: Secure reference via fromDatabase pattern
  • Session security: Auto-generated secret with generateValue: true
  • OAuth providers: All major providers (GitHub, GitLab, Google, etc.) with sync: false for secure credential prompting
  • CodiMD settings: Complete configuration based on existing Heroku/Scalingo deployments

Key Benefits

One-click deployment - Deploy CodiMD instantly on Render.com
Automatic infrastructure - Database provisioning and migrations handled
Security best practices - Secrets prompted during deployment, not hardcoded
Zero-downtime deploys - Health check endpoint for rolling updates
Cost effective - Starter tier configuration suitable for most users
Production ready - Based on existing battle-tested deployment configurations

Validation

The blueprint has been validated for:

  • YAML syntax and structure
  • Render.com specification compliance
  • All required fields and proper referencing
  • Security configuration best practices

Usage

Users can now deploy CodiMD on Render.com by:

  1. Forking this repository
  2. Connecting it to Render.com
  3. The blueprint will automatically provision and configure all necessary infrastructure

Fixes #1929.

[!WARNING]

Firewall rules blocked me from connecting to one or more addresses

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/jgm/pandoc/releases/tags/3.1.11
    • Triggering command: node download.js (http block)

If you need me to access, download, or install something from one of these locations, you can either:


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

Copilot avatar Jun 18 '25 03:06 Copilot