Overview

Sinatra is a minimal Ruby DSL for creating small web applications and APIs with little ceremony. DockerCP provisions it from a clean Docker profile, handling persistent storage, environment configuration, domain mapping, and HTTPS certificates. Environment variables, default ports, and storage volumes come pre-configured, so you can deploy and start using it right away.

Docker image ruby:3.3
Default port 4567
Deployment type docker image
Recommended resources 1 CPU · 1 GB

How deployment works in DockerCP

This template gives DockerCP the deployment metadata needed to create a service, prepare runtime variables, map persistent storage, expose the internal port, and connect a public domain with SSL when required.

  1. Create or select a project where the service belongs.
  2. Review the Docker image, tag, default port, environment variables, and volume mappings.
  3. Deploy the service and check logs until the application is healthy.
  4. Attach a domain or subdomain when the application must be available publicly.
  5. Enable HTTPS and verify the final browser response.

Configuration

Environment variables

Variable Default / guidance
APP_ENV production
APP_PORT 4567

Persistent volumes

Volume Mount path
sinatra_data /data

Commands

DockerCP handles deployment from the panel, but understanding the equivalent Docker commands helps users debug services with more confidence.

docker pull ruby:3.3
docker ps --filter "name=sinatra"

docker logs --tail=100 sinatra

DNS and SSL checklist

Step Expected result
Add A or CNAME record The domain points to the DockerCP server or configured target.
Attach domain to service The service is reachable through the selected hostname.
Enable HTTPS The certificate becomes active and redirect to HTTPS can be enabled.

Screenshots

Panel previews for the Sinatra template: how deployment, the running service, and its key details look inside DockerCP.

Sinatra deployment form inside the DockerCP panel.
Application routes and API endpoints served by the running service.
Framework boot output from the service logs.

Troubleshoot

  • Confirm the Docker image and tag exist.
  • Confirm the selected internal port matches the application port.
  • Confirm required variables such as database URL, app URL, and credentials are set.
  • Check service logs after the first deployment.
  • Verify DNS before requesting or renewing SSL certificates.