# From a server to Cloud Run

> Moving an app from a VPS, a Compute Engine VM or a Docker Compose setup to Cloud Run: what each process becomes, the commands and both bills.

<https://exodus.elim.io/blog/topic/from-a-server>

These guides are for an app that runs on one machine today: a VPS, a Compute Engine VM or a Docker Compose file. They map each process, the web server, the workers, cron, the database and the uploads, to its place on Google Cloud, give the commands in order, and price the machine against Cloud Run for the same traffic.

- [Moving from a VPS to Cloud Run](https://exodus.elim.io/blog/a-vps-to-cloud-run.md): A VPS runs nginx, the app, Postgres, cron and uploads on one machine. What each piece becomes on Cloud Run, the commands, what breaks, and why the bill usually goes up while the work goes down.
- [Moving from a Compute Engine VM to Cloud Run](https://exodus.elim.io/blog/compute-engine-vm-to-cloud-run.md): An app on Compute Engine is already on Google Cloud; only the machines go. What changes for the image, account, network and disks, a weighted switch behind one load balancer, and when a VM is cheaper.
- [Moving a Docker Compose app to Cloud Run](https://exodus.elim.io/blog/docker-compose-to-cloud-run.md): gcloud run compose up puts a whole compose.yaml in one Cloud Run instance, fine for a demo and wrong for production. How to split it into a service, a worker pool, Cloud SQL and Cloud Storage.
