> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fly.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Run a RedwoodJS App

Getting an application running on Fly.io is essentially working out how to package it as a deployable image. Once packaged it can be deployed to the Fly.io platform.

In this guide we’ll learn how to deploy a [RedwoodJS](https://redwoodjs.com) application on Fly.io.

We'll be using the standard web application generated by [RedwoodJS](https://redwoodjs.com).

## *Deploy a Redwood app*

First, [install flyctl](/flyctl/install), the Fly.io CLI, and [sign up to Fly.io](/getting-started/sign-up-sign-in#first-time-or-no-fly-account-sign-up-for-fly) if you haven't already.

Now let's generate a new Redwood app and set it up.

```bash theme={null}
yarn create redwood-app my-redwood-project
cd my-redwood-project
```

You can check out the [Redwood Quick Start guide](https://redwoodjs.com/docs/quick-start) to get your development
environment setup and to generate some data models. Once you're happy with your app, we can deploy it:

<CodeGroup>
  ```bash cmd theme={null}
  cd <%= app_name %>
  fly launch
  ```

  ```output output theme={null}
  Creating app in /Users/me/<%= app_name %>
  Scanning source code
  Detected a <%= detected %> app
  ? App Name (leave blank to use an auto-generated name): <%= app_name %>
  ? Select organization: flyio (flyio)
  ? Select region: mad (Madrid, Spain)
  Created app <%= app_name %> in organization soupedup
  ? Would you like to deploy now? Yes
  ==> Validating app configuration
  --> Validating app configuration done
  Services
  TCP 80/443 ⇢ 8080
  Remote builder fly-builder-little-glitter-8329 ready
  ...
  1 desired, 1 placed, 1 healthy, 0 unhealthy [health checks: 2 total, 2 passing]
  --> v0 deployed successfully
  ```
</CodeGroup>
