# Docker hosting

Docker Engine runs applications in containers. On your VPS, separate project services and describe their configuration to make deployments easier to reproduce.

- Deploy an application and its database
- Organise services with Compose
- Prepare a testing environment

Plan persistent volumes, exposed ports and resource limits. Back up data: recreating a container does not automatically restore its contents.

## Organise a complete application

A business application may combine a web service, a database and background processing. Docker packages them separately; Compose describes their relationships in a shared configuration. This makes it easier to understand what must start, communicate and retain its data.

## Prepare for updates

Keep persistent files in volumes and back up data, not just images. Try new versions in a test environment and prepare a rollback before updating production. Containers share VPS resources, so several active services need to be sized together.

## Do I need Docker Desktop?

No. This page concerns Docker Engine on a Linux server. Docker Desktop terms and subscriptions are separate.