Skip to content

DB containers vs DB servers

You can create both database containers in your Docker environment, or managed database services, in MedStack. Each have their pros and cons. Please take a moment to review this article to help make an informed decision when deciding which method you'll choose to implement.

Container databases Managed database service
Types supported Any containerized database
(e.g. postgres, mysql, mariadb, mongo, redis)

See database services on Docker Hub.
PostgreSQL
MySQL
Connectivity Docker service accessible using the host name (service name). Cloud resource accessible using connection strings.
Compliance Yes – all Docker services ran on MedStack are configured for
operational privacy compliance.
Yes – all cloud resources provisioned via MedStack are configured
for operational privacy compliance.
Auto-scaling CPU/Memory: No – limited to the node on which the service is pinned.
Capacity: No – limited to disk size on node.

Contact support if more compute resources or capacity is required.
CPU/Memory: No – limited to the server size when creating the service.
Capacity: Yes – default configuration.

Contact support if more compute resources or capacity is required.
Backups Hourly, Daily, Weekly, Monthly

Retains monthly snapshots indefinitely.
Daily

Retains daily full backups for 35 days.
Transaction logs available in 5 minute intervals to bridge latest full backup and real-time.
Restoration Not database specific. Data is backed up to configured Docker volumes.
Please contact support for database specific restorations.
Database specific, contact support.
Price Free, but certain databases may have licensing costs. Hourly, set by cloud provider.

See Azure's managed database pricing for PostgreSQL and MySQL.
Recommendations Make use of:
• Labels on nodes
• Volume mapping for the Swarm
• Volume mapping for the service
• Configuring only one (1) replica of the service
• Placement constraints for the service pinning it to a node
Make use of:
• Secrets or Configs to handle the connection string
• Replicas for General Purpose type services (allows for hot-swapping databases)