Production Deployment Compatibility – PHP/React + Supabase
josicelestino
FREEOP

22 days ago

Hello, I’m currently evaluating Railway as the production hosting platform for a custom web application and would like to validate a few infrastructure and runtime requirements before proceeding with deployment.

The application consists of a React frontend and a PHP backend, while the primary PostgreSQL database is hosted externally on Supabase. The backend also integrates with Mercado Pago for payment processing and webhook handling, as well as Melhor Envio for shipping-related API calls. The production domain will be https://www.studiodecosturasz.com.

From a runtime perspective, the application requires PHP 8.2+ with support for PDO, pdo_pgsql, pgsql, curl, mbstring, and openssl. The PHP service must be able to establish outbound TCP connections to the external Supabase PostgreSQL endpoint over port 6543, perform outbound HTTPS requests to third-party APIs such as Mercado Pago and Melhor Envio, and expose a publicly reachable HTTPS endpoint for inbound webhook delivery from Mercado Pago.

My current deployment approach is to containerize the application using a Dockerfile based on PHP 8.2 or 8.3 with Apache, while retaining Apache-level functionality such as .htaccess, mod_rewrite, and mod_headers. I would like to confirm whether this is the recommended architecture on Railway for a PHP/Apache workload of this type, or whether there is a more idiomatic deployment model you would recommend.

I would also like to confirm support for custom domains with automated TLS/SSL provisioning, GitHub-based CI/CD deployment, and secure runtime configuration through Railway Variables/Secrets rather than shipping production credentials in a .env file. Sensitive values such as the Supabase DB password, Mercado Pago access token, webhook secret, and other API credentials would need to remain outside of the application source and be injected securely at runtime.

Could you please confirm whether Railway fully supports this architecture, specifically regarding outbound PostgreSQL connectivity to external providers such as Supabase, inbound HTTPS webhooks from Mercado Pago, Docker-based PHP/Apache deployments, and external HTTPS API traffic? I would also appreciate clarification on whether the Hobby plan is suitable for a small production workload with these characteristics, including any relevant constraints related to CPU/RAM allocation, network egress, service sleep/idle behavior, request duration, concurrency, persistent storage, uptime expectations, or monthly usage thresholds.

Additionally, could you confirm whether Railway provides production-grade operational tooling for this setup, including application and deployment logs, service restarts, health checks, deployment rollbacks, environment separation, and zero-downtime or near-zero-downtime redeployments?

Thank you in advance for your assistance. I’d like to make sure the platform is fully compatible with the application’s runtime, networking, security, and deployment requirements before moving the production environment.

Solved

1 Replies

Railway
BOT

22 days ago

Your architecture is compatible with the platform. We support Dockerfile-based deployments, so a PHP 8.x/Apache image with the extensions you listed will work. Services have unrestricted outbound networking on paid plans (TCP to Supabase on port 6543, HTTPS to payment and shipping APIs), and adding a public domain gives you an HTTPS endpoint for inbound webhooks. Custom domains get automatic Let's Encrypt TLS, GitHub repos auto-deploy on push, and variables are injected as environment variables at runtime so credentials stay out of source. Healthchecks enable zero-downtime deploys for services without volumes, deployment logs are built in, and rollbacks are available within your plan's image retention window. For plan details, resource limits, and pricing see railway.com/pricing.


Status changed to Awaiting User Response Railway • 22 days ago


Railway
BOT

15 days ago

This thread has been marked as solved automatically due to a lack of recent activity. Please re-open this thread or create a new one if you require further assistance. Thank you!

Status changed to Solved Railway • 15 days ago


Welcome!

Sign in to your Railway account to join the conversation.

Loading...