# Deploy WordPress

WordPress runs as a PHP container on port `8080`, with the platform's tightest database integration: pick a [managed MySQL database](/platform/databases) in the app's settings and the `WORDPRESS_DB_HOST`, `WORDPRESS_DB_NAME`, `WORDPRESS_DB_USER`, and `WORDPRESS_DB_PASSWORD` variables are filled in for you.

## The fast path: the stack

The [WordPress stack](/create/templates#wordpress) creates everything in one go - the app from the `light-cloud-com/starter-wordpress` starter, a Shared-tier MySQL database (1 GB), and the wiring between them. Deploy, open the URL, run the WordPress installer, done.

## Bring your own

Deploying your own WordPress repository works the same way:

1. Create the app from your repository - detection recognises WordPress.
2. Create a [MySQL database](/create/database-settings) (Shared tier is fine to start).
3. Connect it in the app's settings - the `WORDPRESS_DB_*` variables appear - or set them by hand from the [Credentials tab](/platform/databases/connect).

## Things to know

- **Keep it warm.** WordPress cold-starts slowly; the stack ships with [min instances](/create/scaling#min-instances) at `1`. Recommended for production - an always-on Micro is about $50 a month, see [Pricing](/billing/pricing#containers).
- **Uploads and plugins.** The filesystem inside a container does not survive deploys or scaling. Keep changes in the repository (themes, plugins via composer or committed files) and media on an offload plugin, not the local disk.
- **One instance.** The stack pins max instances to `1`, which sidesteps shared-filesystem assumptions in plugins. Raise it only if your setup stores nothing locally.

## Related

- [Templates](/create/templates): The WordPress stack, field by field.
- [Databases](/platform/databases): Tiers, and when to move off the Shared pool.
- [Scaling](/create/scaling): Warm minimums and what they cost.
